hallo,

Ik probeer al de hele tijd wat waardes in mijn tabel te voegen maar het lukt niet. Hij geeft geen foutmelding weer maar er gebeurt eigenlijk niks.

dit is de code:


$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);

mysql_query ("INSERT INTO users_reeksen (user_id, vierkleuren_id) VALUES ('" 
    . $_SESSION['user_id'] . "', '" . $_GET['vierkleuren_id'] . "')", $db_handle);
	
mysql_close($db_handle);


hoop dat iemand wat ziet.

groeten
- Wat doet de spatie na mysql_query? Haal die eens weg?
- Bouw foutafhandeling in.
- beveilig je $_GET (en $_POST en $_COOKIE) variabelen tegen SQL-injection met mysql_real_escape_string()
- Verdiep je in de nieuwe MySQLi-functies van PHP. De MySQL-functies gaat er op den duur uit.
Dank je voor de reactie. Ik heb de foiyafhandeling erin gezet en hij zegt: fout bij het invoeren van data. Wordt er biet wijzer van. Ik heb ook mysql_real_escape_string() erin gezet. De spatie is ook weg.

Maar nog steeds gaat er dus iets niet goed. Iemand????

De variabelen komen wel goed door want als ik daar echo voor zet geef die ze mooi weer.

Gr
Wat zegt mysql_error()?
Hij zegt alleen dat de data niet is toegevoegd.

hier is de code:


$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);

    # errors weergeven
    ini_set('display_errors',0); // 1 == aan , 0 == uit
    error_reporting(E_ALL | E_STRICT);

    # sql debug
    define('DEBUG_MODE',false);  // true == aan, false == uit

    # functie voor sql debug
    function showSQLError($sql,$error,$text='Error')
    {
        if (DEBUG_MODE)
        {
            return  '<pre>Error: ' . $error . '<br />' . $sql . '</pre>';
        }
        else
        {
            return $text;
        }
    } 

$sql_insert_user =    "INSERT INTO users_reeksen (user_id, vierkleuren_id)
                       VALUES    (
                                  '';
                                  '".mysql_real_escape_string($_SESSION['user_id'])."',    
                                  '".mysql_real_escape_string($_GET['vierkleuren_id'])."',
                                 )
                      ";
			
if (($uservier = mysql_query($uservier)) === false) 
{
    # als de query fout is -> foutafhandeling
    echo showSQLError($uservier,mysql_error(),'Fout bij het invoegen van de data.');
}
else
{
    # De query is geluk! :)
    
    echo 'Data is toegevoegt!';
}
Moet je wel je DEBUG-modus eens aanzetten, hé ;)
Kijk maar goed naar lijn 9.
hij zecht nu dit:

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 ';
'6',
'' at line 3

Toevoeging op 03/10/2013 18:55:48:

toen ik de tekens op lijn 26 weg haalde zegt hij dit:

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 ')' at line 6
Wat doet die punt-komma op lijn 26?

Een komma teveel bij de laatste value....
Wij plaatsen ook geen komma na een opsomming.
oke heb die laatste komma weg gehaald maar nu zegt hij dit:

Error: Duplicate entry '6' for key 'user_id'
Heb je het al eens vertaald?

Reageren