INSERT INTO of XAMPP probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sven b

Sven b

07/07/2011 21:36:39
Quote Anchor link
Hallo Allen,

Ik ben al de hele dag aan de gang om een simpele script aan de gang te krijgen. In eerste instantie had ik veel meer code, maar toen ik merkte dat het niet werkte ben ik weer terug naar de basic gegaan.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'true');
    
$db = mysql_connect('localhost','root','')
 or die ("Cant connect..." . mysql_error());

if (mysql_select_db("database", $db)) {
    $naam = 'sven';
    mysql_query ("INSERT INTO test ('naam') VALUES ($naam)") or die ("Cant insert");
}
else {
      echo "couldn't select db";
}
?>

Ik krijg het bericht "Cantinsert". Hoe kan dit? Wat moet ik doen om toch de gegevens in mijn database test te krijgen?
Gewijzigd op 07/07/2011 21:38:16 door Sven b
 
PHP hulp

PHP hulp

26/10/2020 02:06:29
 
Serge Girard

Serge Girard

07/07/2011 21:45:51
Quote Anchor link
mysql_errno(), mysql_error() in je DIE zetten.
 
Sven b

Sven b

07/07/2011 21:46:56
Quote Anchor link
Deze manier van INSERT INTO heb ik altijd gebruikt en sinds ik op xampp ben overgegaan doet deze het niet meer. Voorheen gebruikte ik mijn domein, maar dit was te omslachtig met uploaden en dergelijke. Het kan ook zijn dat ik iets veranderd heb zonder dat ik het door heb gehad.

Graag tips ?!

Hartelijk dank!

MvG. Sven
 
- Ariën -
Beheerder

- Ariën -

07/07/2011 21:48:55
Quote Anchor link
Zie Serge' reactie, en houd je $naam variabele buiten quotes.
 
Serge Girard

Serge Girard

07/07/2011 21:50:55
Quote Anchor link
probeer eens manueel een insert via PHPMyadmin of zoiets
 
Sven b

Sven b

07/07/2011 21:53:00
Quote Anchor link
Hartelijk dank! Ik heb beide errors geprobeerd, want ik kreeg ze niet beide tegelijk er in dus heb ze apart geprobeerd.

Ik krijg de volgende 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 ''naam') VALUES (sven)' at line 1

Toch is het mij dan niet geheel duidelijk wat ik moet veranderen. Kan iemand mij helpen? Naar mijn idee heb ik dit altijd zo gedaan en snap ik niet wat ik fout doe.

Toevoeging op 07/07/2011 21:53:54:

Aar,

je bedoelt
$naam = 'sven';?
 
Noppes Homeland

Noppes Homeland

07/07/2011 21:54:52
Quote Anchor link
Het kan niet zijn dat dat insert statement het ooit gedaan heeft!!

Het quoten - op welke manier dan ook - van database, tabel en velden si uit den boze!

Pas ook eens fatsoenlijke foutafhandeling toe, en dat is niet met or die().
 
Serge Girard

Serge Girard

07/07/2011 21:55:00
Quote Anchor link
hoe ziet je tabel eruit?
 
Sven b

Sven b

07/07/2011 21:57:34
Quote Anchor link
Noppes Homeland, suggereer je dit dan?

mysql_query (INSERT INTO test (naam) VALUES ($naam)) or die (mysql_error());

Sergie,

db naam = test
id- primary en auto increment
naam - varchar 255
 
- Ariën -
Beheerder

- Ariën -

07/07/2011 21:58:33
Quote Anchor link
Sven b op 07/07/2011 21:53:00:
$naam = 'sven';?

nee $naam, in je query. Die moet tussen quotes.
 
Sven b

Sven b

07/07/2011 22:13:18
Quote Anchor link
$naam = 'sven';
mysql_query ("INSERT INTO test ('naam') VALUES ('$naam')") or die (mysql_error());

Oke, dat heb ik gedaan, maar krijg de zelfde foutmelding.
 
Serge Girard

Serge Girard

07/07/2011 22:18:18
Quote Anchor link
naam zonder en $naam met...
 
- SanThe -

- SanThe -

07/07/2011 22:21:39
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$sql
= "INSERT INTO test
        (naam) // geen quotes
        VALUES
        ('"
. $naam . "') // quotes EN buiten de quotes
        "
;
?>
Gewijzigd op 07/07/2011 22:24:22 door - SanThe -
 
Serge Girard

Serge Girard

07/07/2011 22:23:36
Quote Anchor link
mysql_query ("INSERT INTO test (naam) VALUES ('$naam')") or die (mysql_error());
 
Sven b

Sven b

07/07/2011 22:24:43
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$con
= mysql_connect("localhost","root","");
if (!$con)
  {

  die('Could not connect: ' . mysql_error());
  }


mysql_select_db("database", $con);
$naam = 'sven';
$sql="INSERT INTO test (naam) VALUES  ('$naam')";

if (!mysql_query($sql,$con))
  {

  die('Error: ' . mysql_error());
  }

echo "1 record added";

mysql_close($con)
?>


Oke, ik heb een werkende script gevonden. Deze ga ik dan naar mijn eigen code vertalen. Hij werkt volledig, maar snap nog niet echt wat ik fout doe, omdat ik dit voorheen ook zo deedt.

Bedankt iig. Overige feedback ontvang ik graag
 
Serge Girard

Serge Girard

07/07/2011 22:25:47
Quote Anchor link
en nu die DIE's eruit
 
- SanThe -

- SanThe -

07/07/2011 22:27:26
Quote Anchor link
Serge Girard op 07/07/2011 22:25:47:
en nu die DIE's eruit


En $vars buiten de quotes houden.
 
Serge Girard

Serge Girard

07/07/2011 22:28:51
Quote Anchor link
ja, die ook
 
Sven b

Sven b

07/07/2011 22:48:49
Quote Anchor link
Thanks. Ik ga er morgen verder aan werken. Nog een goed artikel dat ik moet lezen omtrent dit onderwerp of andere onderwerpen? Ik zag al een artikel foutafhandeling voorbij komen.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.