Avatar billede trax Nybegynder
25. marts 2008 - 22:00 Der er 4 kommentarer og
1 løsning

Fejl ved indsætningen i database

Jeg får denne fejl når jeg prøver at indsætte data i en database:
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near

Koden er:

tilfoej.php
<form id="FormName" action="insert.php" method="post" name="tilfoej">
            <table width="300" border="0" cellspacing="0" cellpadding="0">
                <tr>
                    <td width="120">Navn:</td>
                    <td><input type="text" name="navn" size="30"></td>
                </tr>
                <tr>
                    <td width="120">Adresse:</td>
                    <td><input type="text" name="adresse" size="30"></td>
                </tr>
                <tr>
                    <td width="120">Postnummer:</td>
                    <td><input type="text" name="postnummer" size="4" maxlength="4"></td>
                </tr>
                <tr>
                    <td width="120">By</td>
                    <td><input type="text" name="by" size="30"></td>
                </tr>
                <tr>
                    <td width="120">E-mail</td>
                    <td><input type="text" name="email" size="30"></td>
                </tr>
            </table>
            <input type="submit" value="Tilf&oslash;j"><input type="reset" value="Slet alt">
        </form>


Insert.php
<?php
$con = mysql_connect("SERVER","USER","PASSWORD");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
  mysql_select_db("DATABASENAVN", $con);
 
  $sql="INSERT INTO deltager (navn, adresse, postnummer, by, email)
VALUES
('$_POST[navn]','$_POST[adresse]','$_POST[postnummer]','$_POST[by]','$_POST[email]')";if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "Deltager tilføjet";mysql_close($con)
?>


Hvad går der lige galt?
Avatar billede trax Nybegynder
25. marts 2008 - 22:02 #1
Hov, her er lige hele fejlen:
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'by, email) VALUES ('NAVN', 'ADRESSE', '0000', 'BY', 'ad' at line 1
Avatar billede kimg Nybegynder
25. marts 2008 - 22:04 #2
Jeg vil gætte på at det er by, mener det er et reserveret ord i MySql prøv at ændre det til city, i databasen

Kim
Avatar billede trax Nybegynder
25. marts 2008 - 22:09 #3
Doh ja..

Smid et svar og du får point!

Tak
Avatar billede dkfire Nybegynder
25. marts 2008 - 22:09 #4
by ER et reserveret ord i mysql. Du kan sætte ` rundt om by hvis du vil beholde by som feltnavn, dvs:
sql="INSERT INTO deltager (`navn`, `adresse`, `postnummer`, `by`, `email`)
VALUES ('$_POST[navn]', '$_POST[adresse]', '$_POST[postnummer]', '$_POST[by]', '$_POST[email]')";
Avatar billede kimg Nybegynder
25. marts 2008 - 22:14 #5
Du får et svar ;-)

Kim
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