EspenDL Skrevet 11. september 2005 Del Skrevet 11. september 2005 (endret) Hei! Jeg har problemmer med et påmelding script. Lurer på om noen kan hjelpe meg litt her: if (empty($fornavn) || empty($etternavn) || empty($nick) || empty($epost) || empty($tlf)) { echo "En eller flere felt mangler informasjon. "; } if (empty($cl)) { echo "Du må ha lest og forstått reglene.. bla bla bla...."; } else { // Connect to MySQL mysql_connect($mySQLhost, $mySQLuser, $mySQLpass) or die("Could not connect: " . mysql_error()); mysql_select_db($mySQLdb); Det som skjer er at så lenge noen krysser av for å ha lest og forstått reglene kjører scriptet videre og legger dataen inn i SQL databasen. Selvom flere felt mangler informasjon . Endret 11. september 2005 av EspenDL Lenke til kommentar
kimla Skrevet 11. september 2005 Del Skrevet 11. september 2005 (endret) Tipper det er fordi du spør den om: hvis fornavn, etternavn etc er tomme, så skal "mangler informasjon" komme. Men på neste if så spør du bare om reglene, og hvis den er huket av så går det videre uansett. if (empty($fornavn) || empty($etternavn) || empty($nick) || empty($epost) || empty($tlf)) { echo "En eller flere felt mangler informasjon. "; } else { if (empty($cl)) { echo "Du må ha lest og forstått reglene.. bla bla bla...."; } else { // Connect to MySQL mysql_connect($mySQLhost, $mySQLuser, $mySQLpass) or die("Could not connect: " . mysql_error()); mysql_select_db($mySQLdb); } } Dette tror jeg er feilen. Er en liten stund siden jeg har drevet med PHP, så ikke bli sur om jeg tok heeelt feil EDIT: Var litt skriveleif i koden jeg ga deg, hadde glemt en '}' Endret 11. september 2005 av kimla Lenke til kommentar
Tha_Zaynt Skrevet 11. september 2005 Del Skrevet 11. september 2005 (endret) Prøv denne koden: if(!$_POST['fornavn']){ $feil[0] ="Du har ikke fyllt ut fornavn"; } if(!$_POST['etternavn']){ $feil[1] ="Du har ikke fyllt ut etternavn"; } if(!$_POST['nick']){ $feil[2] ="Du har ikke fyllt ut nick"; } if(!$_POST['epost']){ $feil[3] ="Du har ikke fyllt ut e-post"; } if(!$_POST['tlf']){ $feil[4] ="Du har ikke fyllt ut telefonnummer"; } if(!$cl){ $feil[5] ="Du har ikke du har ikke krysset av for at du har lest og forstått reglene"; } if(!empty($feil)){ foreach ($feil as $feilmelding){ echo"Følgende feilmelding(er) oppstod <p/> $feilmelding<br/>"; } } else{ $fornavn = mysql_escape_string(mysql_real$_POST['fornavn']); $etternavn = mysql_escape_string($_POST['etternavn']); $nick = mysql_escape_string($_POST['nick']); $epost = mysql_escape_string($_POST['epost']); $tlf = mysql_escape_string($_POST['tlf']); //putt i database... } den vil si ifra hvilke felter som ikke er blitt utfyllt også. EDIT; Koden er ikke testet så si ifra om du får noen feilmeldinger.. Endret 11. september 2005 av Tha_Zaynt Lenke til kommentar
EspenDL Skrevet 11. september 2005 Forfatter Del Skrevet 11. september 2005 Fungerer den, men Følgende feilmelding(er) oppstod gjentar seg før alle feilmeldingene Lenke til kommentar
Tha_Zaynt Skrevet 11. september 2005 Del Skrevet 11. september 2005 Fungerer den, men Følgende feilmelding(er) oppstod gjentar seg før alle feilmeldingene Oops glemte å sette det utenfor loopen...nå skal det fungere: if(!$_POST['fornavn']){ $feil[0] ="Du har ikke fyllt ut fornavn"; } if(!$_POST['etternavn']){ $feil[1] ="Du har ikke fyllt ut etternavn"; } if(!$_POST['nick']){ $feil[2] ="Du har ikke fyllt ut nick"; } if(!$_POST['epost']){ $feil[3] ="Du har ikke fyllt ut e-post"; } if(!$_POST['tlf']){ $feil[4] ="Du har ikke fyllt ut telefonnummer"; } if(!$cl){ $feil[5] ="Du har ikke du har ikke krysset av for at du har lest og forstått reglene"; } if(!empty($feil)){ echo"Følgende feilmelding(er) oppstod <p/>"; foreach ($feil as $feilmelding){ echo"$feilmelding<br/>"; } } else{ $fornavn = mysql_escape_string(mysql_real$_POST['fornavn']); $etternavn = mysql_escape_string($_POST['etternavn']); $nick = mysql_escape_string($_POST['nick']); $epost = mysql_escape_string($_POST['epost']); $tlf = mysql_escape_string($_POST['tlf']); //putt i database... } Lenke til kommentar
EspenDL Skrevet 11. september 2005 Forfatter Del Skrevet 11. september 2005 takkar Lenke til kommentar
EspenDL Skrevet 11. september 2005 Forfatter Del Skrevet 11. september 2005 Prøver meg på avmelding også. $passord = rtrim(ltrim(strip_tags($passord))); $passord2 = rtrim(ltrim(strip_tags($passord2))); $passord = md5($passord); Hva gjør jeg for å sjekke om passord erlik passord2? Lenke til kommentar
Tha_Zaynt Skrevet 13. september 2005 Del Skrevet 13. september 2005 (endret) if (md5($_POST['passord']) == $passordlagretidatabasen){ //meld av } EDIT; (Regner med at du har md5'et passordet som ligger i db'en) Endret 13. september 2005 av Tha_Zaynt 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å