2014-10-06 2 views
-3

Я работаю над сценарием с базой данных, но прошло очень много времени с тех пор, как я узнал об этом, и он продолжает давать мне ошибки, и, возможно, это легко для вас, ребята =)Вставить данные в базу данных?

Я хочу, чтобы это

<body> 
<hr> bestelling <hr> 

<form action="bestellingopslaan.php" method="post"> 

Bestelnummer <input name="bestelnummer" type="text"> <br> 
Klantnaam <input name="klantnaam" type="text"> <br> 
Artikel<input name="artikel" type="text"> <br> 
Prijs <input name="prijs" type="text"> <br> 
<input name="verzenden" type="submit" value="Verzenden" /> 

</form> 

этой страницы

<body> 
bestelling opslaan 


<?php 
$dbhost = 'localhost'; 
$dbuser = 'root'; 
$dbpass = ''; 
$dbname = '11092068'; 

//connection to the database 
$dbhandle = mysql_connect($dbhost, $dbuser, $dbpass) 
Or die("couldn't connect to SQL Server on $dbhost"); 

//select a database to work with 
$selected = mysql_select_db($dbname, $dbhandle) 
Or die("couldn't open database $dbname"); 

//maak de query 
$insert_query = "INSERT INTO bestelling ('$_POST[bestelnummer]', '$_POST[klantnummer]',  '$_POST[artikel]', '$_POST [prijs]') "; 

if (mysql_query($insert_query, $dbname)) 
{ 
    echo "de gegevens zijn opgeslagen in de database"; 
} 
else 
{ 
    echo "foutje"; 
}   
?>    
</body> 
</body> 

Вот скриншот из моей базы данных

database

Итак, надеюсь, вы, ребята, можете мне помочь.

+2

Какие ошибки, где и чего вы хотите достичь? – Justinas

+1

Сначала избегайте ввода вашего пользователя и введите имя столбца: 'insert into tab (col1, col2) values ​​('val1', 'val2')'. Google * Подготовленные утверждения * –

+3

Вы уязвимы для [SQL-инъекций] (http://bobby-tables.com) и используете устаревшую/устаревшую библиотеку БД. Прекратите работать над этим кодом, пока не узнаете, как предотвратить атаки, а затем переключитесь на нужную библиотеку SUPPORTED, прежде чем идти дальше по этой кроличьей дыре. –

ответ

0

Было бы хорошо, чтобы увидеть свои ошибки, но глядя на код Это выглядит как вы forgottten ЗНАЧЕНИЯ в запросе .... Это должно быть INSERT INTO table_name (column1, column2 ,etc) VALUES .....

+0

Да, синтаксическая ошибка sql является частью проблемы OP. но не нравится w3fools. Они дерьмо как ресурс. Просто потому, что они появляются впервые в результатах Google, НЕ делают их полезными. Вместо этого ссылайтесь на фактические документы mysql. –

+0

@ ZiomekZiomski Вам не обязательно нужно имя столбца для вставки данных, его проблема заключается в том, как он использует свои переменные в двойных кавычках и без скобок для определения каждой переменной или путем объединения ее и, возможно, других.Было бы проще использовать MySQLi или PDO с подготовленными операторами. – Prix

+0

Я согласен с приведенными выше комментариями. Во всяком случае, я предлагаю вам найти пример «INSERT» с кодом с использованием mysqli или PDO с подготовленными инструкциями на основе того, что использует OP. Это был бы лучший ответ. –