|
|
|
|
|
для: vale1487
(11.02.2010 в 21:33)
| | Затруднения в чем - как получить значения массива в цикле или как вставить их в таблицу?
Если затруднения по получению значений, то выше я вам уже говорил как можно к примеру представлять элементы формы и получать их значения в последствии.
Если по второму, то если вы читали внимательно, то значения VALUES в запросе прописываются через запятую, и при указании полей в запросе, указав и соответствующее поле таблицы, также через запятую.
Здесь форум, а не кафедра. Здесь вам будут помогать исправлять ваши конкретные ошибки, а не вести курс лекций. Учиться вам придется самому, по учебникам.
Вы уже такой дока, что даже на этапе изучения/отладки не хотите получать сообщения о возможных ошибках запроса?
Проверить булевое значение достаточно как if($result)....
\n для браузера (в качестве указания переходя на новую строку) пустой звук, он понимает только <br>.
И вообще выбросить эту проверку из цикла, проку от нее ни какого в данном случае. | |
|
|
|
|
|
|
|
для: sim5
(11.02.2010 в 18:13)
| | Вот что у меня получается
<form action="" method="post">
<input type="text" name="hotel[]" value="Отель1"> </br>
<input type="text" name="hotel[]" value="отель2"></br>
<input type="submit" value="Send">
</form>
foreach ($_POST['hotel'] as $hotel) // проход по массиву и запись в переменную
{
$result= mysql_query("INSERT INTO interes (hotel) VALUES ('$hotel')"); //заносим в таблицу поля и результат запроса присваиваем переменой $result
if ($result==true)
{
echo "дабавлено\n";
}
else
{
echo "ошибка добавления";
}
}
В базу приходит все как надо, но если добавить еще поля
<input type="text" name="prise[]" value="цена2"></br>
<input type="text" name="prise[]" value="цена2"></br>
то тут задтруднение | |
|
|
|
|
|
|
|
для: vale1487
(11.02.2010 в 18:06)
| | Примеров от элементарных до сложных в разделе http://softtime.ru/forum/index.php?id_forum=3 форума хоть отбавляй. Вы простых вещей не понимаете. К тому же, вы хотя бы напишите что представляет ваш массив полученный из формы.
Создайте просто массив без всякой формы, пройдите его циклом и вносите его значения в базу. Зная синтаксис запроса, и как получать значения массива, это будет совсем не сложно записать как код. Вот вам уж очень простейший пример будет. НО напишите этот код сами, и покажите его ВЕСЬ здесь, если будут проблемы.
У вас же даже строка запроса к базе имеет ошибки (по крайней мере в том, что вы выставили здесь), попробуйте найти их сами. | |
|
|
|
|
|
|
|
для: neadekvat
(11.02.2010 в 18:01)
| | Да, верно, хотел сказать о "пропавших" элементах массива, а получилось.... ) | |
|
|
|
|
|
|
|
для: sim5
(11.02.2010 в 17:51)
| | это один из вариантов
я вставлял mysql_query("INSERT INTO таблица...
и в теле цикла, у меня вставялись почему то очень много значений вместо в базу , вместо 2.
Я ж много не прошу , мне б элементарный пример на основе выше описанных примеров. Там буду разбираться. | |
|
|
|
|
|
|
|
для: sim5
(11.02.2010 в 17:51)
| | Разве вне цикла $hotel не будет существовать? По-меому, в $hotel будет последнее значение из массива.
Но ситуацию это, конечно, не меняет. | |
|
|
|
|
|
|
|
для: vale1487
(11.02.2010 в 17:20)
| | Зачем вы в цикле выводите значение в браузер, а вне цикла пытаетесь его внести в базу? Вне цикла переменной $hotel уже не существует! У вас таким макаром вообще ничего в базу вноситься не будет. К тому же, хотя бы так дополняйте запрос:
mysql_query("INSERT INTO таблица VALUES ('$hotel')") or die (mysql_error());
и обязательно получите сообщение о существующих ошибках при запросе.
Еще раз прочтите об операторе INSERT.
Впрочем, судя по вашему коду, вам нужно не с этого начинать, мне так кажется. | |
|
|
|
|
|
|
|
для: vale1487
(11.02.2010 в 17:20)
| | омг..
foreach ($_POST['hotel'] as $hotel)
{
echo "<b>$hotel</b><br>";
mysql_query("INSERT INTO таблица VALUES ('$hotel');
}
И это не вопрос "знаю/не знаю" и опыта. Это логика, обычная логика.. | |
|
|
|
|
|
|
|
для: sim5
(10.02.2010 в 16:49)
| | Копировать я ничего и не пробовал, я застрял до того как написал тему в месте отсылки формы как массива для вставки в базу а именно ее обоботка.
И так и не могу разбраться с методом обработки, мозгов не хватает.
небольшая выдержка
обрабатываем массив от формы
foreach ($_POST['hotel'] as $hotel)
{
echo "<b>$hotel</b><br>";
}
mysql_query("INSERT INTO таблица VALUES ('$hotel')
Не могу я до сих пор понять как массив присланный от формы заставить в таблицу уйти весь. У меня то только одно поле корректно вставится а другое пустое то наоборот. | |
|
|
|
|
|
|
|
для: vale1487
(10.02.2010 в 15:59)
| | Выполнение скрипта, запрос к базе, это не мультик, работа эта ничего не показывает, окромя сообщений о ваших возможных ошибках.
А результат работы - помещение данных в базу, вот в нее вы можете заглянуть. Вы видимо код имели ввиду. Можно конечно и написать, но а самому написать? Вы изучили оператор INSERT?
Учиться надо, а это значит надо пробовать, а не слепо копировать себе то, что вам покажут. Поэтому пишите, а уж на ошибки ваши вам укажут на форуме. Вот это для вас будет куда полезнее для понимания.
Давайте, пробуйте, и результат проб сюда, если что не так будет ;-) | |
|
|
|
|