2012-02-16 6 views
2

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

Он должен обновлять таблицу под названием user_foods в базе данных, называемой vitamink, но это не так. Он правильно подключен. Это не проблема.

<?php include 'top.php'; ?> 

</head> 

<div id="container"> 

<?php include 'header.php'; ?> 

<?php include 'nav.php'; ?> 


    <div id="content-container"> 

<div id="content_for_site"> 
     <h2>Find A Food</h2> <br /> 






<?php 
$query = "SELECT 
`id`, `user_submitted_id`, `approved`, `name`, `source`, `vit_k`, `cal`,`protein`, `fiber`, `carbs`, `sugar`, `sodium`, `chol` 
FROM `foods` 
"; 
    $query_run = mysql_query($query); 


?> 


<br /><br /> 

Food&nbsp;|&nbsp; 
Vitamin K (mcg)&nbsp;|&nbsp; 
Fiber (g)&nbsp;|&nbsp; 
Calories&nbsp;|&nbsp; 
Protein (g)&nbsp;|&nbsp; 
Carbs &nbsp;|&nbsp; 
Sugar (g)&nbsp;|&nbsp; 
Sodium (mg)&nbsp;|&nbsp; 
Cholesterol &nbsp;|&nbsp; 
Source 
<br /> 




<form action="find-a-meal.php" method="POST">  
<?php 
while ($row = mysql_fetch_assoc($query_run)){ 
    ?> 
<input type="checkbox" name="<?php 
echo $row["id"]; 
?>"<?php 
    echo ' value="'.$row["id"].'" />' 
    .$row["name"]." | ". 
    $row["vit_k"]." | ". 
    $row["fiber"]." | ". 
    $row["cal"]." | ". 
    $row["protein"]." | ". 
    $row["carbs"]." | ". 
    $row["sugar"]." | ". 
    $row["sodium"]." | ". 
    $row["chol"]." | ". 
    $row["source"]. 
    '<br />'; 
    } 
    ?> 
<br /><br /> 
<input type="submit" value="Add Food to my Meal Planner Queue"> 

</form> 

<?php 


// send the foods to the mysql database 
if (isset($_POST[$row["id"]]) && !empty($_POST[$row["id"]])){ 


$id = $_POST[$row["id"]]; 
$query = "INSERT INTO `users_foods` VALUES('','".$_SESSION['user_id']."','".$id."','','','','')"; 

$query_run = mysql_query($query); 

    } 


?> 






     </div> 
+0

Вы используете $ _SESSION, но не начали сеанс, используя session_start(); обратитесь к http://www.w3schools.com/php/php_sessions.asp для получения сведений о сеансе php –

+0

вы можете перейти к $ query. вы можете выполнить echo $ query и дать нам результат этого –

+0

вы не используете инструкцию 'UPDATE' ... вы используете' INSERT' –

ответ

2

строка [ "ID"] не в почтовом массиве. массив сообщений содержит только числа (идентификаторы).

1

SQL UPDATE Синтаксис

UPDATE table_name 
SET column1=value, column2=value2,... 
WHERE some_column=some_value 

SQL UPDATE Пример

UPDATE Persons 
SET Address='Nissestien 67', City='Sandnes' 
WHERE LastName='Tjessem' AND FirstName='Jakob' 

кредит: http://www.w3schools.com/sql/sql_update.asp

+0

Я только что редактировал мои вопрос. Я хотел сказать вставить в базу данных. –

1

Перед тем, как делать какие-либо дальнейшее кодирование, я очень рекомендую вам немного исследований о mysqli и внедрении SQL Injection. Надеюсь, это поможет вам закодировать безопасный webapp.

2
INSERT INTO users_food(col1, col2) VALUES (value1, value2) 

не испортить поля автоинкремента. Пусть база данных справится с этим. И используйте поля, которые вы хотите вставить .... И используйте

or die(mysql_error()) 

в вашем запросе sql.

Плюс запустить запрос в phpmyadmin и увидеть его вставки или нет.

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