Avatar billede sito Nybegynder
07. september 2004 - 10:31 Der er 5 kommentarer og
1 løsning

Manglende data fra formular?

hej

Har lavet følgende formular, som gør at man kan tilmelde sig en kundedatabase på min hjemmeside:

<form action="signup2.php" method="post">
 
      <div align="center">Name:
    <input type="text" name="navn" size="30">
    <br>E-mail:
    <input type="text" name="mail" size="30">
    <br><br>
    <input type="submit" name="send" value="Send">
  </div>

Formularen leder hen til signup2, som ser ud som følger:

if ($navn =="" or $mail =="") {
    echo "You have not entered either your name or E-mail!<br>";
    echo "<a href=\"signup.php\">Try again</a>";
    exit;
}
else{
    $strSQL = "
    INSERT INTO
        kunder
        (name, mail)
    VALUES
        ('$navn', '$mail')
    ";
   
    $resultat = executeSQL($strSQL);

Hvor executeSQL() er en funktion jeg selv har lavet som virker fint, så der er ikke noget problem. Problemet ligger i, at det ikke ser ud som om der bliver sendt noget fra formularen videre til det næste script. jeg kommer aldrig videre end til 'You have not entered...' på trods af jeg har indtastet data. Hvordan kan det være? Skal der et 'value' tag på, og hvad skal der i så fald stå?

På forhånd tak :)
Avatar billede ldanielsen Nybegynder
07. september 2004 - 11:35 #1
Uden at være særlig hård til php:

Jeg gætter på at det er fordi du har valgt method="post".

Skal man ikke hente fra en POST på en anden måde end en GET?
Avatar billede iss Novice
07. september 2004 - 11:36 #2
Måske du skal prøve $_POST['navn'] og det samme med mail.
Avatar billede sito Nybegynder
07. september 2004 - 12:13 #3
Okay, nu har jeg tilføjet en del, og indsætningen virker med virker med _POST. Nu vil jeg så gerne have verificeret hvad der bliver indtastet med følgende:

if (empty($_POST[navn]))  echo "You have not entered your name!"; echo "<br><a href=\"signup.php\">Try again</a>"; exit;
if (empty($_POST[mail])) echo "You have not entered your e-mail adress!"; echo "<br><a href=\"signup.php\">Try again</a>"; exit;
if (empty($_POST[adress])) echo "You have not entered your adress!"; echo "<br><a href=\"signup.php\">Try again</a>"; exit;
if (empty($_POST[zip])) echo "You have not entered your zipcode!"; echo "<br><a href=\"signup.php\">Try again</a>"; exit;
if (empty($_POST[city]) echo "You have not entered your city!"; echo "<br><a href=\"signup.php\">Try again</a>"; exit;
if (empty($_POST[country])) echo "You have not entered your country!"; echo "<br><a href=\"signup.php\">Try again</a>"; exit;

Men får denne fejl:
Parse error: parse error, unexpected T_ECHO in signup2.php on line 10, som er linien med 'City'. Hvad har jeg gjort galt?
Avatar billede sito Nybegynder
07. september 2004 - 12:21 #4
Manglede en parantes :) Så nu kan den finde ud af at verificere at der mangler et navn, men hvis jeg så indtaster navn, og ikke noget af det andet kommer jeg bare til en blank side? mærkeligt, da den jo burde skrive at jeg manglede mailadresse... Anyone?
Avatar billede sito Nybegynder
07. september 2004 - 12:41 #5
Fandt ud af det på anden vis, tak for hjælpen. iss, det er vist dig der fortjener pointene, opretter du et svar?
Avatar billede iss Novice
07. september 2004 - 12:56 #6
.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester