Tha_Zaynt Skrevet 10. november 2004 Del Skrevet 10. november 2004 (endret) jeg har en hel drøss med elseif-setninger som bestemmer hva du kan submitte med et skjema jeg har. Dette fungerer jo helt fint, men jeg vil gjerne at alle feilmeldingene skal vises på en gang (hvis brukeren har skrevet flere feil), men med slik jeg har det nå vises bare en og en feilmelding..hvordan får jeg til dette? Endret 10. november 2004 av Tha_Zaynt Lenke til kommentar
kcobain Skrevet 10. november 2004 Del Skrevet 10. november 2004 (endret) Vis jeg forstod deg rett så kan du bruke. if($_POST['brukernavn'] && $_POST['passord']) { Gjøre det som skal gjøres. } else { Feilmelding } Du må bytte om brukernavn og passord men hva feltene heter. Et forslag. Endret 10. november 2004 av kcobain Lenke til kommentar
Tha_Zaynt Skrevet 10. november 2004 Forfatter Del Skrevet 10. november 2004 var ikke helt slik jeg mente..hvis en bruker har skrevet feil på flere en enn plass vil jeg at alle feilmeldingene skal komme opp...og ikke bare en av dem.. Lenke til kommentar
arnizzz Skrevet 10. november 2004 Del Skrevet 10. november 2004 Skjønnte ikke helt. Men jeg kan vel komme med et av mine tåpelige forslag lag en variabel som f.eks heter $ErDetFeilHerMonTro . Og så setter du den = 1 når du får en feil . Etter alle else if settningene kan du kjøre if($ErDetFeilHerMonTro) { echo" alle feilmeldingene her"; Dette er fungerer sikkert ikke siden du skal ha feilmeldingene ved avkryssningsboksene. Bare et forslag Lenke til kommentar
Tha_Zaynt Skrevet 13. november 2004 Forfatter Del Skrevet 13. november 2004 skjønte ikke helt jeg...hvordan blir det hvis debug'en ser slik ut da?: if (empty($fornavn) || empty($etternavn) || empty($alder) || empty($tlf) || empty($brukernavn) || empty($passord) || empty($pass)) { echo "<p><b>Et eller flere felt mangler nødvendig informasjon!</b></p>"; } elseif (!empty($email) && !ereg("^[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+@[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+\.[^@ ()$#><;*%?&+='\{}æøåÆØÅ\.]+$", $email)) echo "<p><b>ERROR! Feil format på mailadresse!</b></p>"; elseif (is_numeric($tlf)==false) echo "<p>Telefonnr. må skrives i tallformat eks: 72483293</p>"; elseif (is_numeric($alder)==false) echo "<p><b>Alderen må skrives i tallformat!</p></b>"; elseif ($passord == "False") echo "<p><b>Passordene må være like!<b></p>"; elseif ($alder < 12) echo "<p><b>Du må være minst 12 år for å være med på nisselink dataparty</b></p>"; elseif ($alder > 25) echo "<p><b>Nisselink er bare for ungdommer mellom 12-25år.</b></p>"; Lenke til kommentar
Torbjørn Skrevet 13. november 2004 Del Skrevet 13. november 2004 du får samle opp alle feilmeldingene i en array og vise innholdet av denne til slutt. Lenke til kommentar
Tha_Zaynt Skrevet 13. november 2004 Forfatter Del Skrevet 13. november 2004 Jeg er ikke helt sikker på hvordan jeg skal gjøre dette særlig fordi jeg har med en mysql sjekk som jeg glemte å ta med i stad if (empty($fornavn) || empty($etternavn) || empty($alder) || empty($tlf) || empty($brukernavn) || empty($passord) || empty($pass)) { echo "<p><b>Et eller flere felt mangler nødvendig informasjon!</b></p>"; } elseif (!empty($email) && !ereg("^[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+@[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+\.[^@ ()$#><;*%?&+='\{}æøåÆØÅ\.]+$", $email)) echo "<p><b>ERROR! Feil format på mailadresse!</b></p>"; elseif (is_numeric($tlf)==false) echo "<p>Telefonnr. må skrives i tallformat eks: 72483293</p>"; elseif (is_numeric($alder)==false) echo "<p><b>Alderen må skrives i tallformat!</p></b>"; elseif ($passord == "False") echo "<p><b>Passordene må være like!<b></p>"; elseif ($alder < 12) echo "<p><b>Du må være minst 12 år for å være med på nisselink dataparty</b></p>"; elseif ($alder > 25) echo "<p><b>Nisselink er bare for ungdommer mellom 12-25år.</b></p>"; else { mysql_connect($mySQLhost, $mySQLuser, $mySQLpass) or die("Could not connect: " . mysql_error()); mysql_select_db($mySQLdb); if (mysql_result(mysql_query("SELECT count(*) as count FROM users WHERE brukernavn = '".$brukernavn."' LIMIT 1"),0,"count") == "1") { echo "<p><b>Brukernavnet $brukernavn er opptatt!</b></p>"; exit(); } Lenke til kommentar
christt Skrevet 13. november 2004 Del Skrevet 13. november 2004 Bytt ut echo med f.eks variabelen $error: $error = "<p><b>Et eller flere felt mangler nødvendig informasjon!</b></p>"; Husk å bruk .= på de andre setningene slik at du ikke får med tidligere feil: $error .= "<p><b>ERROR! Feil format på mailadresse!</b></p>"; Så skriver du ut $error der du vil ha feilmeldingene: echo $error; Lenke til kommentar
sindreij Skrevet 13. november 2004 Del Skrevet 13. november 2004 Jeg bruker if ((!$fornavn) || (!$etternavn) || (!$e_posten) || (!$brukernavn)){ echo "Du glemte å skrive inn dette:<br>"; if(!$fornavn){ echo "Fornavn<br>"; } if(!$etternavn){ echo "Etternavn<br>"; } if(!$e_posten){ echo "E-Post<br>"; } if(!$brukernavn){ echo "Brukernavn<br>"; } include "inkludert/iregistrer.php"; include "inkludert/bunn.php"; exit(); } Lenke til kommentar
Tha_Zaynt Skrevet 13. november 2004 Forfatter Del Skrevet 13. november 2004 hvis den som fylle ut formen har skrevet flere en en feil vises alle feilmeldingene til de feilene han har gjort samtidig da? Lenke til kommentar
Tha_Zaynt Skrevet 13. november 2004 Forfatter Del Skrevet 13. november 2004 hvordan blir det hvis jeg skal plassere alle i en array da \...neon som vil hjlepe meg? Lenke til kommentar
Torbjørn Skrevet 14. november 2004 Del Skrevet 14. november 2004 hvis du ikke vet hvordan du bruker arrays så ligger manualen og lengter etter å fortelle deg hvordan... http://no2.php.net/array Lenke til kommentar
Tha_Zaynt Skrevet 14. november 2004 Forfatter Del Skrevet 14. november 2004 fines det ikke en manual på norsk? Jeg kan jo egenelsk, men synes det var litt vanskelig skrevet.. Lenke til kommentar
Torbjørn Skrevet 14. november 2004 Del Skrevet 14. november 2004 det er lurt å venne seg til å lese manualen først som sist. du vil alltid trenge informasjon derfra (jeg bruker den daglig) Lenke til kommentar
Tha_Zaynt Skrevet 14. november 2004 Forfatter Del Skrevet 14. november 2004 har sett litt på manualen, men fikk ikke så mye ut av det. Uansett...går det an å gjøre slik?? $errormsg1='blablabla' $errormsg2='blablabla' $errormsg3='blablabla' $errormsg4='blablabla' $errormsg5='blablabla' $errormsg6='blablabla' array($errormsg1,$errormsg2,$errormsg3,$errormsg4,$errormsg5,$errormsg6) Lenke til kommentar
Torbjørn Skrevet 14. november 2004 Del Skrevet 14. november 2004 hva skjer hvis du prøver? det finnes måter å legge inn flere elementer i en eksisterende array, slik: $arr= Array("et eller annet", "i arrayen" , "til å begynne med"); $arr[] = "dette legges til til slutt"; Lenke til kommentar
Tha_Zaynt Skrevet 14. november 2004 Forfatter Del Skrevet 14. november 2004 Jeg prøvde å lage deguggen som følger; $errormsg1 = '<p><b>ERROR! Feil format på mailadresse!</b></p>'; $errormsg2 = '<p>Telefonnr. må skrives i tallformat eks: 72483293</p>'; $errormsg3 = '<p><b>Alderen må skrives i tallformat!</p></b>'; $errormsg4 = '<p><b>Passordene må være like!<b></p>'; $errormsg5 = '<p><b>Du må være minst 12 år for å være med på nisselink dataparty</b></p>'; $errormsg6 = '<p><b>Nisselink er bare for ungdommer mellom 12-25år.</b></p>'; $arr = array($errormsg1,$errormsg2,$errormsg3,$errormsg4,$errormsg5,$errormsg6); if (empty($fornavn) || empty($etternavn) || empty($alder) || empty($tlf) || empty($brukernavn) || empty($passord) || empty($pass)) { echo "<p><b>Et eller flere felt mangler nødvendig informasjon!</b></p>"; } elseif (!empty($email) && !ereg("^[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+@[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+\.[^@ ()$#><;*%?&+='\{}æøåÆØÅ\.]+$", $email)) echo "$arr"; elseif (is_numeric($tlf)==false) echo "$arr"; elseif (is_numeric($alder)==false) echo "$arr"; elseif ($passord == "False") echo ""; elseif ($alder < 12) echo "$arr"; elseif ($alder > 25) echo "$arr"; men når jeg tester det, outputter den bare Array.. Lenke til kommentar
Torbjørn Skrevet 14. november 2004 Del Skrevet 14. november 2004 en array i seg selv er det ingen vite i å outpute. du må hente ut hvert element og vise. poenget var, at du kan gå gjennom punkt for punkt i din feilsjekk. og hvis et punkt er feil, så legg til en feilmelding i din array. mao bruk en array som en oppsamlingsbøtte for alle feil du støter på. så kan du siden etter alle feilsjekkene vise alle feilmeldingene i din som du har samlet opp iløpet av feilsjekken. Lenke til kommentar
christt Skrevet 14. november 2004 Del Skrevet 14. november 2004 Tha_Zaynt: Det virker som om du mangler litt grunnleggende forståelse for hvordan variabler, arrays, funksjoner, osv fungerer. Jeg vil anbefale deg å lese litt mer om disse temaene. Det finnes masse tutorials på nettet. Ta deg tid til å forstå hvordan ting fungerer. Jeg lærte meg PHP ved å lese manualen. I tillegg leste jeg en del tutorials for å få litt tips og tanker rundt hvordan man kan løse problemer på en god måte. Lenke til kommentar
Tha_Zaynt Skrevet 15. november 2004 Forfatter Del Skrevet 15. november 2004 hvis jeg får et konkret svar på akkurat hvordan det blir i dette tilfellet kanskje jeg ser sammenhengen...Jeg har det litt travelt med å gjøre ferdig et medlemms-script så jeg har ikke tid til å lese så grundig igjennom manualen..Satte meg ned å leste litt idag, men fikk veldig lite ut av det fordi jeg synes det var vanskelig skrevet. Har tenkt å se igjennom det litt grundigere når jeg får litt bedre tid, men det hadde jo hjulpet på forståelsen hvis jeg hadde fått en løsning på dette. Skjønner at det blir litt som å gi svaret på en vansklig oppgave, og dere tenker sikkert at jeg ikke lærer noe så lenge jeg ikke prøver selv. Jeg har faktisk prøvd mye og lenge og står skikkelig fast her så jeg hadde satt stor pris på om noen kunne finne ne løsning på dette.. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå