MySQL更多列然后在php查询

时间:2015-07-01 09:24:11

标签: php mysql database

我改为使用更多列的另一个数据库。 Nut现在我的注册页面已经不再适用了。这些表都有默认设置。 如何让查询将所有数据放入列中并使用其他列的默认值?

这是我的疑问:

    mysql_query("

    INSERT INTO `users` 
    (`username`, `password`, `mail`, 'account_created', 'ip_last', 'ip_reg')
     VALUES(
            '".$naam."', '".$wachtwoord."', '".$email."', 
            '".$timestamp."', '".$ip."', '".$ip."'
           )
     ");

之前有效,但现在在这个新的数据库上它已经不再适用了。我没有改变我的php版本。

2 个答案:

答案 0 :(得分:1)

您可以在不带引号的查询字符串中使用变量。 顺便说一句,你应该考虑更安全 - PDO? What is this magic system

PDO版本:

$query = $db->prepare("INSERT INTO users(username, password, mail, account_created, ip_last, ip_reg) VALUES (?, ?, ?, ?, ?, ?)");
$query->execute(array($naam, $wachtwoord, $email, $timestamp, $ip, $ip));

垃圾版:

mysql_query("INSERT INTO users(username, password, mail, account_created, ip_last, ip_reg) VALUES ($naam, $wachtwoord, $email, $timestamp, $ip, $ip)");

答案 1 :(得分:0)

了解 back ticks 单引号

之间的区别
 mysql_query("
INSERT INTO `users` (`username`, `password`, `mail`, `account_created`, `ip_last`, `ip_reg`) VALUES('".$naam."', '".$wachtwoord."', '".$email."', '".$timestamp."', '".$ip."', '".$ip."')");