Gå til innhold

hente verdi fra en form til en variabel?


Anbefalte innlegg

Jeg skal hente et brukernavn fra en enkel form:

 

form name="navn" method="post" action="./test.php" enctype="multipart/form-data">

<input type="hidden" name="navn" value="NULL">

<table width="142" height="26" border="0">

<tr>

<td width="136"><span class="gtxt">Brukernavn:</span>

<input type="text" name="navn" size="20"></td>

</tr>

</table>

<input type="submit" name="Submit" value="Send">

<input name="reset" type="reset" value="Slett">

 

Denne skal så inn i en variabel $username.

Hvordan får jeg dette til? Jeg trodde kanskje $username = '".$_post['navn']."';

Men jeg fikk ikke det helt til å virke..

Lenke til kommentar
Videoannonse
Annonse

Det holder vel med $username = $_POST['navn'];

 

Men du har to felter som heter navn, så da blir det sikkert noe kluss der..

 

<input type="hidden" name="navn" value="NULL">

<input type="text" name="navn" size="20">

 

Hva den første inputen her gjør, må jeg si jeg ikke helt klarer å se... :hmm:

Lenke til kommentar

Takk, det virket!

 

Slik som jeg skal ha det, skal da scriptet sjekket hvilken epost som bruker $brukernavn er registrert med, og sende mail til denne adr. Dersom ikke brukernavnet og epost adr bruker setter inn, stemmer, gir dette feilmelding.

Hvordan får jeg laget en slik settning i php?

det må bli noe slik:

 

$username = $_POST['navn'];

$epost = $_POST['mail'];

sjekk om brukernavn og passord matcher.

if not: skriv feilmelding.

else: utfør random pass generator og send mail. Print: suksess.

 

Vet ikke helt hvordan jeg skal angripe dette og trenger litt start hjelp...

Lenke til kommentar

if($username == $_POST['username'] && $epost == $_POST['epost']) {

mail($epost, "Hei på deg");

} else {

print("Feil brukernavn/passord");

}

 

 

Du kan jo sjekke hvordan mail-funksjonen virker.. skrev bare noe "tull" der nå..

Lenke til kommentar

Hmm... hva gjør jeg egentlig galt her:

 

$mail = $_POST['mail'];

$user = $_POST['user'];

$query = "select * from users where username = $user and mail = $mail";

$result = mysql_query($query);

if($user == $_POST['user'] && $mail == $_POST['mail'])

{

echo ("test1");

}else{

echo ("test2");

}

 

 

Jeg skal her (forsøke) å sammenlikne det bruker skriver inn i formen med det som ligger i databasen. Altså om bruker skriver inn brukernavn og epost som stemmer med det som ligger i databasen --> suksess. Ellers, feil.

 

Jeg tror jeg har falt ned i et hull som jeg ikke klarer å komme opp av her......

For meg så ser det ut som jeg ikke henter opp verdier fra databasen og sammenlikner dette med hva bruker skriver inn i POST formen jeg har...

Lenke til kommentar

Du sammenlikner det de skrev i formen, med det de skrev i formen. De vil jo alltid være likt. Se på $mail = $_POST['mail'];. Dette kan vel aldri bli ulikt?

 

Det du gjør feil, er hvordan du henter ut fra databasen... Prøv denne:

 

$query = mysql_query("SELECT * FROM users WHERE username = $user AND mail = $mail");

$result = mysql_fetch_array($query);

 

if($user == $result['username'] && $mail == $result['mail'])

{

echo ("test1");

}else{

echo ("test2");

}

 

 

Mulig du må fikse litt på ' og ' her og der..tror kanskje det må med i spørringen. f.eks. rundt $username, men er ikke helt sikker..

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...