[PHP/MySQL] Query was empty

Pagina: 1
Acties:
  • 657 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

  • DeepFreeze.NL
  • Registratie: April 2006
  • Laatst online: 02-03 08:01
Ik ben momenteel aan het proberen om een registratieformulier te maken in PHP waarmee de gegevens geïmporteerd worden naar een MySQL database. Steeds wanneer ik het registratieformulier aan het testen ben krijg ik de MySQL error: Query was empty.

Na wat research op het internet kom ik toch echt niets vinden waaruit blijkt wat het probleem kan zijn. Wie o wie kan mij helpen :) ?

(De velden in de sql query komen 100% overeen met die in de tabel van de database.)

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string(sha1($_POST['password']));
    $first_name = mysql_real_escape_string($_POST['first_name']);
    $last_name = mysql_real_escape_string($_POST['last_name']);
    $birth = mysql_real_escape_string($_POST['birth']);
    $country = mysql_real_escape_string($country);
    $email = mysql_real_escape_string($_POST['email']);
    $comment = mysql_real_escape_string($comment);
    $website = mysql_real_escape_string($website);
    $ip = $_SERVER['REMOTE_ADDR'];
    $registration_date = date("Y-m-d H:i:s");
    
    $sql = mysql_query("INSERT INTO users (username, password, first_name, last_name, birth, country, email, website, comment, registration_date, IP) VALUES ($username, $password, $first_name, $last_name, $birth, $country, $email, $website, $comment, $registration_date, $ip)");
    
    if (!mysql_query($sql)) {
        die('Error: ' . mysql_error());
    } else {
        echo "Succes! You may login now.";
    }

Acties:
  • 0 Henk 'm!

  • Bitage
  • Registratie: April 2006
  • Laatst online: 19-05-2024
Je moet single quotes om je values doen :?

Nu snapt MySQL er niets van en returned mysql_query($q); false, waardoor je if-statement faalt.

[ Voor 55% gewijzigd door Bitage op 13-01-2008 15:48 ]


Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Die 2e aanroep van mysql_query is de fout. Je voert eerst de query uit en vervolgens ga je nog een keer een query doen met als parameter het resultaat van de vorige. Dat slaat nergens op. :>

{signature}


Acties:
  • 0 Henk 'm!

  • DeepFreeze.NL
  • Registratie: April 2006
  • Laatst online: 02-03 08:01
Voutloos schreef op zondag 13 januari 2008 @ 15:50:
Die 2e aanroep van mysql_query is de fout. Je voert eerst de query uit en vervolgens ga je nog een keer een query doen met als parameter het resultaat van de vorige. Dat slaat nergens op. :>
Ahh, stom van me |:( . Bedankt voor je hulp!

Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Graag gedaan.

En omdat ik het niet laten kan: dit was je niet gebeurd als je een betere variabele naam gekozen had. mysql_query() geeft een resource terug en geen sql string, dus iets als $resource, $result, $rs of iets in die trant beschrijft de inhoud van die var veel beter. Vervolgens zou je het nooit in je hoofd halen om mysql_query($result) op te schrijven. :)

{signature}