Avatar billede nopper Praktikant
22. april 2006 - 16:19 Der er 28 kommentarer og
1 løsning

mysql 5 insætte data

hvad er galt i nedenstående:
mysql_connect('localhost', 'root', 'xxxxx');
    mysql_select_db('forening');
    mysql_query(
        "INSERT INTO medlemmer" .
        "(medlemsnummer, navn, vejnavn, husnummer, postnummer) " .
        "VALUES ($_POST[medlemsnummer], ".
        "'$_POST[navn]', '$_POST[vejnavn]', " .
        "'$_POST[husnummer]', $_POST[postnummer])");

Jeg får ikke nogen data ind i databasen.
Avatar billede leif Seniormester
22. april 2006 - 16:20 #1
Det er altid en god idé at smide en "or die" på sine SQL sætninger.

    mysql_query(
        "INSERT INTO medlemmer" .
        "(medlemsnummer, navn, vejnavn, husnummer, postnummer) " .
        "VALUES ($_POST[medlemsnummer], ".
        "'$_POST[navn]', '$_POST[vejnavn]', " .
        "'$_POST[husnummer]', $_POST[postnummer])") or die (mysql_error());
Avatar billede leif Seniormester
22. april 2006 - 16:20 #2
Så får du en fejl meddelelse om hvorfor den ikke smider data ind.
Avatar billede nopper Praktikant
22. april 2006 - 16:28 #3
okay, prøver det.
Avatar billede nopper Praktikant
22. april 2006 - 16:32 #4
Det hjalp ikke. Der kommer ikke nogen fejl. Mystisk ikke?
Avatar billede erikjacobsen Ekspert
22. april 2006 - 16:33 #5
Bliver koden udført?
Avatar billede nopper Praktikant
22. april 2006 - 16:35 #6
ja, det regner jeg med. Ved det ikke. Der er ikke nogen fejl overhovedet.
Avatar billede leif Seniormester
22. april 2006 - 16:36 #7
mysql_connect('localhost', 'root', 'xxxxx') or die (mysql_error());
    mysql_select_db('forening') or die (mysql_error());
Avatar billede leif Seniormester
22. april 2006 - 16:36 #8
Ellers må vi nok vide noget mere om siden samt se noget mere kode
Avatar billede nopper Praktikant
22. april 2006 - 16:37 #9
Jeg prøver at lære mysql efter Thomas G. Kristensen's hæfte. Det er lavet til mysql 4.2. jeg har mysql 5. Har det nogen betydning?.
Avatar billede erikjacobsen Ekspert
22. april 2006 - 16:39 #10
Det har ikke nogen betydning. Bliver din kode udført - tjek med en
  print "Hejsa";
eller vis os koden.
Avatar billede nopper Praktikant
22. april 2006 - 16:42 #11
Her er indtastningside:
<html>
<body>
Indtast venligst oplysningerne om det nye medlem
<form method='post' action='tilfoej.php'>
Medlemsnummer: <input type='text' name='medlemsnummer' /><br />
Navn: <input type='text' name='navn' /><br />
Adresse: <input type='text' name='vejnavn' />
Husnummer.: <input type='text' name='husnummer' size='3' /><br />
Postnummer.: <input type='text' name='postnummer' size='4' /><br />
<input type='submit' value='Tilføj' />
</form>
</body>
</html>

Her er forbindeslsen til mysql:
<html>
<body>
Medlemmet <? echo $_POST[navn]; ?> er tilføjet.
<?
if(  isset($_POST[medlemsnummer]) &&
    isset($_POST[navn]) &&
    isset($_POST[vejnavn]) &&
    isset($_POST[husnummer]) &&
    isset($_POST[postnummer]) ){
    mysql_connect('localhost:3306', 'root', 'xxxxx')or die (mysql_error());
    mysql_select_db('forening')or die (mysql_error());
    mysql_query(
        "INSERT INTO medlemmer" .
        "(medlemsnummer, navn, vejnavn, husnummer, postnummer) " .
        "VALUES ($_POST[medlemsnummer], ".
        "'$_POST[navn]', '$_POST[vejnavn]', " .
        "'$_POST[husnummer]', $_POST[postnummer])")or die (mysql_error());
    }
?>
</body>
</html>
Avatar billede erikjacobsen Ekspert
22. april 2006 - 16:43 #12
Forfatteren i dit hæfte har vel ikke skrevet
if(  isset($_POST[medlemsnummer]) &&
men
if(  isset($_POST['medlemsnummer']) &&

Får du udskrevet Medlemmet ... er tilføjet?
Avatar billede nopper Praktikant
22. april 2006 - 16:45 #13
jo, han har skrevet det, som jeg har postet. Nej, det gør jeg ikke.
Avatar billede erikjacobsen Ekspert
22. april 2006 - 16:49 #14
Hvad står der i tilfoej.php.

Hvis forfatteren til det hæfte siger man skal skrive $_POST[medlemsnummer] og ikke $_POST['medlemsnummer'] eller $_POST["medlemsnummer"], så er der noget meget fundamentalt han ikke har fattet en brik af. Jeg vil anbefale dig at tænde op i brændeovnen i aften - med det hæfte altså. Det er ikke til at vide hvad andre dårligdomme han vil lære dig.
Avatar billede nopper Praktikant
22. april 2006 - 16:51 #15
Jeg har prøvet med dit forslag Erik .Det hjælper ikke noget.
Avatar billede erikjacobsen Ekspert
22. april 2006 - 16:54 #16
Det gør i mange tilfælde ingen forskel, men det er en unode man ikke skal lære. Men prøv nu lige:

    Hvad står der i tilfoej.php?
Avatar billede nopper Praktikant
22. april 2006 - 16:57 #17
<html>
<body>
Indtast venligst oplysningerne om det nye medlem
<form method='post' action='tilfoej.php'>
Medlemsnummer: <input type='text' name='medlemsnummer' /><br />
Navn: <input type='text' name='navn' /><br />
Adresse: <input type='text' name='vejnavn' />
Husnummer.: <input type='text' name='husnummer' size='3' /><br />
Postnummer.: <input type='text' name='postnummer' size='4' /><br />
<input type='submit' value='Tilføj' />
</form>
</body>
</html>
Avatar billede erikjacobsen Ekspert
22. april 2006 - 16:58 #18
Så er det jo nok derfor. Det der skal stå i action er den fil med dine sql-ting i. Så ret
    <form method='post' action='tilfoej.php'>
til
    <form method='post' action='dinfilmedsqltingi.php'>
Avatar billede nopper Praktikant
22. april 2006 - 16:58 #19
Undskyld den var forkert. her er den rigtige.
<html>
<body>
Medlemmet <? echo $_POST[navn]; ?> er tilføjet.
<?
if(  isset($_POST[medlemsnummer]) &&
    isset($_POST[navn]) &&
    isset($_POST[vejnavn]) &&
    isset($_POST[husnummer]) &&
    isset($_POST[postnummer]) ){
    mysql_connect('localhost:3306', 'root', 'xxxxx')or die (mysql_error());
    mysql_select_db('forening')or die (mysql_error());
    mysql_query(
        "INSERT INTO medlemmer" .
        "(medlemsnummer, navn, vejnavn, husnummer, postnummer) " .
        "VALUES ($_POST[medlemsnummer], ".
        "'$_POST[navn]', '$_POST[vejnavn]', " .
        "'$_POST[husnummer]', $_POST[postnummer])")or die (mysql_error());
    }
?>
</body>
</html>
Avatar billede erikjacobsen Ekspert
22. april 2006 - 17:00 #20
Jamen hvad sker der så når du trykker på knappen?
Avatar billede nopper Praktikant
22. april 2006 - 17:00 #21
Medlemmet er tilføjet.
Avatar billede nopper Praktikant
22. april 2006 - 17:02 #22
Jeg  burde jo så efterfølgende kunne se den i min database, men der er ingenting.
Avatar billede erikjacobsen Ekspert
22. april 2006 - 17:02 #23
Så skal vi lige høre hvad for en php version du kører.
Avatar billede nopper Praktikant
22. april 2006 - 17:04 #24
php5
Avatar billede erikjacobsen Ekspert
22. april 2006 - 17:22 #25
Og du kører det via en webserver, dvs. der står http://.... i browseren?  Der er umiddelbart ikke noget galt.
Avatar billede nopper Praktikant
22. april 2006 - 17:28 #26
Både ja og nej. Jeg kører windows xp med IEE installeret. Jeg skriver localhost/formular.php.Er det min webserver der er problemet?.
Avatar billede leif Seniormester
22. april 2006 - 17:30 #27
Kan du lave en fil med og kald den infophp.php:
<?
phpinfo();
?>


Kan du køre den ?
Avatar billede nopper Praktikant
22. april 2006 - 17:32 #28
ja, ingen problemer. Du kan se den på http://mjols.dk/php.php
Avatar billede nopper Praktikant
22. december 2006 - 18:42 #29
uløst
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
Computerworld tilbyder specialiserede kurser i database-management

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