2015-03-29 4 views
-1

Я начал изучать php и просто застрял в части форм, я не могу вставить данные в базу данных. С phpmyadmin работает на порт 80 и все работает нормально. Пожалуйста, помогите , Вот код fellow.phpНевозможно вставить данные формы в базу данных в php

<?php 
    $dbc=mysqli_connect('127.0.0.1','root','','abhishek') 
     or die("error connecting to the databsase"); 
    $nama=$_POST['hell']; 
    $nanu=$_POST['email']; 
    print $nama; 
    $ab="INSERT INTO attempt('name','email')VALUES('$nama','$nanu')"; 
    if(mysqli_query($dbc,$ab)) { 
     echo "Records added successfully."; 
    } 
    else { 
     echo "Records not added successfully."; 
    } 
    mysqli_close($dbc); 
?> 

А вот first.html код-

<html> 
    <head> 
     <title>first attempt</title> 
    </head> 
    <body> 
     <form action="fellow.php" method="post" > 
      Name: 
      <input type="text" name="hell" id="hell" value="hell"> 
      Email 
      <input type="text" name="email" id="email" value="email"> 
      <input type="submit" name="submit" value="submit"> 
     </form> 
    </body> 
</html> 

Пожалуйста, помогите, как я не в состоянии продолжить futher

+1

У вас есть ошибки PHP? Кроме того, ** будьте осторожны **, вы уязвимы для 'SQL injection': http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php?rq=1 – D4V1D

ответ

1

Вы используете одиночные кавычки вместо обратных тиков, и вы уязвимы для SQL-инъекции, поэтому используйте подготовленный оператор, такой как:

$stmt = $dbConnection->prepare('INSERT INTO attempt(`name`,`email`)VALUES(?, ?)'); 
$stmt->bind_param(..., $nama); 
..set other parameter 
$stmt->execute(); 
+0

Sql инъекции и т. д. все в порядке. Но прежде всего данные должны быть сохранены. Я использовал обратные тики слишком. НО КОГДА Я НАЖМЯ кнопку отправки, вместо того, чтобы показывать какую-либо ошибку или, таким образом, отображается php-код и данные не обновляются в базе данных. – Abhishek

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