2013-08-15 5 views
0

пытается ввести код в sqldatabase ... что мне здесь не хватает? Анализировать ошибка: синтаксическая ошибка, неожиданный T_OBJECT_OPERATORT_OBJECT_OPERATOR при попытке вставить данные в данные mySQL

<?php 
$name = ""; 
$email = ""; 
$msg_to_user = ""; 
if ($_POST['name'] != "") { 

    require_once("storescripts/connect_to_mysqli.php"); 

    // Be sure to filter this data to deter SQL injection, filter before querying database 
    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $sqlCommand = "SELECT * FROM newsletter WHERE email='$email'"; 
    $sql = mysqli_query($myConnection,$sqlCommand); 
    $numRows = mysqli_num_rows($sql); 
     if (!$email) { 

     $msg_to_user = '<br /><br /><h4><font color="FF0000">Please type an email address ' . $name . '.</font></h4>'; 
    } else if ($numRows > 0) { 
     $msg_to_user = '<br /><br /><h4><font color="FF0000">' . $email . ' is already in the system.</font></h4>'; 

    } else { 
     $sqlCommand="INSERT INTO newsletter (name, email, dateTime)              VALUES(?,?,NOW())"; 
$stmt= $myConnection->prepare($sqlCommand); 
$stmt=->bind_param('ss',$name,$email); 
$stmt->execute(); 
    $msg_to_user = '<br /><br /><h4><font color="0066FF">Thanks ' . $name . ', you have been added successfully.</font></h4>'; 
     $name = ""; 
     $email = ""; 
    } 
} 
?> 

ответ

2

У вас есть этот код:

$stmt=->bind_param('ss',$name,$email); 

Это должно быть так:

$stmt->bind_param('ss',$name,$email); 

Далее (несвязанный) совет:

  • Исправить ошибки, связанные с SQL-инъекцией, с помощью параметризованных запросов. См. How can I prevent SQL injection in PHP?
  • Правильно и последовательно отпечатывайте свой код, чтобы предотвратить нечитаемость.
+0

спасибо, всегда пропустите маленькую вещь ... задание на шину, чтобы попытаться закодировать весь день>. < –

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