Avatar billede super-mann Juniormester
24. september 2010 - 19:05 Der er 5 kommentarer og
1 løsning

Indsætte data i tabel fra formular - får fejl i sidste linie

Hej

Jeg forsøger at indsætte data i en tabel, via en formular, desværre kommer der en fejl: Parse error: syntax error, unexpected $end in /home/www/xx.dk/users.handle.php on line 9.

Jeg håber at der er en, som kan hjælpe med en løsning, idet jeg nok har stirret mig blind - kan i hvert fald ikke finde fejlen :-) Det skal måske bemærkes, at der i tabellen inden "fornavn" er "id" som skal være automatisk.

users.create.php
<form action="users.handle.php" method="post">
    Fornavn: <input type="text" name="firstname"><br>
    Mellemnavn: <input type="text" name="middlename"><br>
    Efternavn: <input type="text" name="lastname"><br>
    E-mail: <input type="text" name="email"><br>
    Password: <input type="text" name="password"><br>
    <input type="submit" value="Opret bruger"> eller <input type="reset" value="Slet alt" name="delete">
    <input type="hidden" name="referer" value="users.create">
</form>


users.handle.php
<?php
include('config.php');

if ($_POST['referer'] == 'users.create') {
    mysql_query("INSERT INTO users (firstname, middlename, lastname, email, password) VALUES ('','".$_POST['firstname']."','".$_POST['middlename']."','".$_POST['lastname']."','".$_POST['email']."','".$_POST['password']."')") OR DIE(mysql_error());
    header("Location: index.html;
    }
}
?>
Avatar billede majbom Novice
24. september 2010 - 19:24 #1
header("Location: index.html;

skal være

header("Location: index.html");
Avatar billede super-mann Juniormester
24. september 2010 - 19:39 #2
Lige ændret det, men får fortsat en fejl.. Denne gang er fejlen ændret til linie 8 og ikke 9, som tidligere:
Parse error: syntax error, unexpected '}' in /home/www/xx.dk/users.handle.php  on line 8
Avatar billede majbom Novice
24. september 2010 - 20:12 #3
ja, du har én løkke (din if), men du har 2 }
25. september 2010 - 10:41 #4
Naar du faar loest syntaksfejlen vil du faa en mysql fejl fordi du proever at indsaette seks vaerdier i fem felter.  Tabellen har sandsynligvis seks kolonner, id (automatisk), firstnamed, middlename, lastname, email, og password.  I saa fald kan du enten indsaette vaerdier i alle seks felter ved

("INSERT INTO users VALUES ('".$_POST['firstname']."','".$_POST['middlename']."','".$_POST['lastname']."','".$_POST['email']."','".$_POST['password']."')") OR DIE(mysql_error());

eller ogsaa specificere de fem felter og give fem vaerdier, altsaa undlade den foerste '',

("INSERT INTO users (firstname, middlename, lastname, email, password) VALUES ('".$_POST['firstname']."','".$_POST['middlename']."','".$_POST['lastname']."','".$_POST['email']."','".$_POST['password']."')") OR DIE(mysql_error());
01. oktober 2010 - 11:08 #5
super-mann, saa du mit (og de andre) indlaeg?  Det ville vaere godt at modtage en reaktion.  Hvis spoergsmaalet i mellemtiden ikke laengere er relevant saa luk det venligst.
Avatar billede majbom Novice
10. november 2010 - 14:19 #6
super-mann?
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

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