Intereting Posts
Хранение информации о времени: требуется часовой пояс? Как заставить CURL работать с PHP в Windows? (WAMP) подписывать запрос на использование твиттера с маркером oauth Laravel 4 удалить Index.php из URL Как отредактировать этот запрос MySQL, чтобы включить дополнительный столбец с count и avg? Должен ли я регенерировать_session_id на каждой странице? Завершение кода PHP для NetBeans для стандартных функций Как решить ошибку cURL 60: сертификат SSL в Laravel 5? Как применить usort () с двумя критериями в PHP? Как преобразовать API Instagram в JSON в XML с PHP? Добавление пользовательского текста под кнопкой X, который удаляет элементы из корзины Как получить данные заказа Magento от Observer Изображение в реальном времени из rrd-файла в PHP Показать случайный DIV при каждой загрузке страницы (для модального модальности) Laravel 4: Как получить выбранные / конкретные столбцы во многих отношениях?

используйте некоторое время mysql_fetch_array и UPDATE во время цикла

Я пытаюсь извлечь данные из одной таблицы, сравнить столбцы с переменной, затем, если они совпадают, добавить их и обновить поле в другой таблице. Кажется, что UPDATE работает только один раз внутри цикла while и помещает значение этого времени в каждую строку этого столбца по всей таблице. Странно, когда я повторяю его, все значения являются правильными (уникальными) .. но только когда я эхо … когда я смотрю на таблицу с терминалом, все строки этого столбца идентичны. Я прочитал, что вы не можете использовать 2 запроса за раз … затем снова … Я прочитал, что вы можете, если первый из них выходит за пределы цикла … пожалуйста, помогите …

Я хочу добавить field1 и field2 каждой строки и поместить общее количество в общую строку.

heres код ….

<?php require("connection.php"); mysql_select_db("database", $connection); echo "<br />"; $result = mysql_query("SELECT * FROM table"); while($row = mysql_fetch_array($result)) { $values = ($row['field1'] + $row['field2']); echo "values = " . $values; $sql=mysql_query("UPDATE table SET total_val = '$values'"); echo $row['user_name'] . " " . $values; echo "<br />"; } ?> 

Вот, что эхо дает мне

Сьюзан 14

Мэри 18

Боб 13

Сэм 21

heres the database

 mysql> SELECT total_val FROM table; +-----------+ | total_val | +-----------+ | 21 | | 21 | | 21 | | 21 | +-----------+ 

итоговые значения ech – это именно то, что я хочу. Мне просто нужно, чтобы они помещались внутри столбца total_val.

Обновить конкретную (текущую) строку в цикле while

В настоящее время он делает это, когда while достигает цикла в конце итерации, он имеет общее число 21 и обновляет таблицу со значением 21, следовательно, все строки содержат 21.

Ваше обновление Query обновляет все строки при каждом добавлении условия для уникального идентификатора для обновления

 $sql=mysql_query("UPDATE table SET total_val = '$values' WHERE id=$row['id']"); 

Текущий запрос обновляет все строки в базе данных.

Попробуй это:

 $sql=mysql_query("UPDATE table SET total_val = '$values' WHERE id=".$row['id']);