login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[php]Alle checks uitvoeren

Offline finduilas - 03/07/2006 18:14
Avatar van finduilasPHP gevorderde Hallo;

http://plaatscode.be/1046/
Dit is m'n registreerscript.Maar alleen is het nu wel onhandig.Alle checks worden in volgorde uigevoerd.Dus als username niet is ingevuld stopt hij meteen daar.Hoe kan ik me script aanpassen dat hij alle checks doet en dat ik dus alle echo's krijg.

7 antwoorden

Gesponsorde links
Offline gothmog - 03/07/2006 18:18 (laatste wijziging 03/07/2006 18:19)
Avatar van gothmog Lid Op zo'n soort manier:
  1. <?php
  2. if(mysql_num_rows($result) > 0)
  3. {
  4. $error[] = _usernameexists;
  5. }
  6.  
  7. if(mysql_num_rows($result2) > 0)
  8. {
  9. $error[] = _websitenameexists;
  10. }
  11.  
  12. if($error)
  13. {// als dingen niet correct zijn ingevult
  14. echo _signupnotsucceed."<br><br>";
  15.  
  16. $j = 1;
  17. for($i = 0; $i < count($error); $i++){
  18. if($error[$i]){
  19.  
  20. echo "$j. $error[$i]<br>";
  21. $j++;
  22. }
  23. }
  24. print ("<br><br>"._gobacklink."");
  25. }
Offline finduilas - 03/07/2006 19:03
Avatar van finduilas PHP gevorderde Dit is te ingewikkeld .Ik kreeg de tip van lemon om het te doen met array_push. http://www.site...amp;id=227 Ik snap nu het principe en ga het uitproberen.
Offline Rens - 03/07/2006 19:26 (laatste wijziging 03/07/2006 19:29)
Avatar van Rens Gouden medaille

Crew algemeen
Té ingewikkeld?
Dat is zo'n beetje precies hetzelfde...
  1. if(!check())
  2. {
  3. array_push($errors,"Username mag niet langer zijn dan 25 tekens.");
  4. }

Of:
  1. if(!check())
  2. {
  3. $errors[] = "Username mag niet langer zijn dan 25 tekens.";
  4. }


Ingewikkeld? 

edit; @gothmog:
Regel 17 t/m 24:
  1. for($i = 0; $i < count($error); $i++)
  2. {
  3. echo ($i+1).". ".$error[$i]."<br>";
  4. }

$error[$i] bestaat altijd als er minstens 1 waarde in de array zit.
Hij begint standaard met tellen vanaf 0, dus of je de array nou start op regel 34, of op regel 512, de eerste waarde is 0, behalve als het anders aangegeven is 
En die $j is ook onnodig, je echoot gewoon ($i+1).
Zo word $i niet veranderd, maar begin je op nr. 1.
Offline finduilas - 03/07/2006 19:29
Avatar van finduilas PHP gevorderde Ik kon het niet aflijden uit het script hoe het werkte.BIj die array_push wel.En ik wil het niet gwn kopieren maar begrijpen 
Offline Rens - 03/07/2006 19:30
Avatar van Rens Gouden medaille

Crew algemeen
Dan moet je niet zeggen dat het ingewikkeld is, maar vragen om uitleg:)
Dan is er altijd wel iemand die het uitlegt...
Offline finduilas - 03/07/2006 19:33 (laatste wijziging 03/07/2006 19:33)
Avatar van finduilas PHP gevorderde Bij die array_push heb ik die gekregen daarom dat ik dat neem.Maar heb nu wel een vraagje:
http://plaatscode.be/1053/

Alleen krijg ik geen errors terwijl die er dan wel moeten komen.

EDIT: De elseifs van de controle => if .Maar heb hem niet meer opnieuw online gezet.
Offline Gerard - 03/07/2006 20:56
Avatar van Gerard Ouwe rakker probleem is ondertussen door finduilas opgelost door geen gebruik meer te maken van elseif maar alles los.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.213s