2013-05-18 2 views
0

Моя PHP-программа не вставляет мои записи, введенные в браузере, в мою базу данных SQL. См. Код ниже. Этот код является обновлением до того, о котором я спрашивал ранее. Кто-то предложил это для безопасности по другим причинам.PHP-код не вставляет записи в базу данных

Я НЕ получаю ошибок во всех программах, которые выполняются нормально в браузере, однако всякий раз, когда я проверяю базу данных, после запуска кода эти записи не были введены. Я что-то упускаю?

<html> 
<head> 
</head> 
<body> 
<form action="register_development_file_1b.php" method="post"> 
    Email: <input type="text" name="email"><br /> 
    Date: <input type="text" name="date"><br /> 
    Time: <input type="text" name="time"><br /> 
     <input type="submit" name="submit"> 
</form> 

<?php 
    if(isset($_POST['submit'])) 
    { 
     $con = mysql_connect("localhost","username","password") or die(mysql_mysql); 
     mysql_select_db("databasename", $con) or die(mysql_query("databasename", $con)); 

     $email = mysql_real_escape_string($_POST['email']); 
     $date = mysql_real_escape_string($_POST['date']); 
     $time = mysql_real_escape_string($_POST['time']); 

     $sql = "INSERT INTO 
      signups ('signup_email_address', 'signup_date','signup_time') 
      VALUES ('".$email."','".$date."','".$time."')"; 

     mysql_query($sql, $con) or die(mysql_error()); 

     mysql_close($con); 
    } 
?> 
</body> 
</html> 
+0

Что такое имя этого файла вы в курсе, и что такое 'умереть (mysql_mysql)'? –

+1

'mysql_' обесценен. Вместо этого используйте mysqli или PDO. –

+0

@ Ricahard Bruff Извините, ваши исходные коды были настолько грязными, я не заметил эту проблему, очень хорошо, также когда люди предоставляют вам ответ, вы должны принять их, если найдете их полезными – samayo

ответ

2

В вашем SQL-запросе есть опечатка. Тогда имена полей, ('signup_email_address', 'signup_date','signup_time') не должны быть записаны между ''. Это используется исключительно для строк, среди значений, а не для имен полей, таблиц, схемы или чего-то еще. Если вы хотите поместить их между кавычками, используйте вместо этого.

1

Correct От:

$sql = "INSERT INTO 
      signups ('signup_email_address', 'signup_date','signup_time') 
      VALUES ('".$email."','".$date."','".$time."')"; 

To:

$sql = "INSERT INTO 
      signups (signup_email_address, signup_date,signup_time) 
      VALUES ('".$email."','".$date."','".$time."')"; 

И попробовать. Я думаю, это должно сработать.

+0

Привет всем в Stackoverflow Я бы ЛЮБЛЮ В БОЛЬШОМ благодарим всех вас за то, что помог мне более 6 часов, я работал над этим, и я наконец решил проблему. Я хочу поделиться со всеми вами тем, что было не так в надежде, что это может помочь кому-то еще в будущем .... Как оказалось, я НЕ НАЗЫВАл себя (т.е. мое имя пользователя) в качестве ПОЛЬЗОВАТЕЛЯ в системе баз данных на главном сервере ... BIG DUH ... в любом случае, все ваши предложения работали, в частности, в отношении безопасности и вставки mySQL. Снова спасибо всем – xzrb1187d

0

запрос должен быть, как показано ниже

$sql = "INSERT INTO 
      signups (signup_email_address, signup_date,signup_time) 
      VALUES ('$email','$date','$time')"; 
+0

благодарю вас за помощь. Я попробую эти предложения и сообщите, если они или все из них работа ... – xzrb1187d

+0

Привет всем на Stackoverflow Я бы ЛЮБЛЮ ВЕЛИКОЕ благодарю всех вас за то, что помог мне более 6 часов, и я работал над этим, и я наконец решил проблему. Я хочу поделиться со всеми вами тем, что было не так в надежде, что это может помочь кому-то еще в будущем .... Оказывается, я НЕ НАЗЫВАл себя (т.е. мое имя пользователя) в качестве ПОЛЬЗОВАТЕЛЯ в системе баз данных на хост-сервер ... BIG DUH ... во всяком случае, все ваши предложения работали, в частности, о безопасности и установке mySQL. Еще раз спасибо всем – xzrb1187d

Смежные вопросы