Автор Тема: Помогите с PHP: функция explode  (Прочитано 4482 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Tweak

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
    • http://tweak.tut.by/
Помогите с PHP: функция explode
« : 20 Июля 2010, 02:07:00 »
Доброго времени суток.
Делаю нечто подобное как интернет-магазин. У меня есть список товаров/услуг, я их вывожу списком и у каждого наименования есть чекбокс и текстовое поле с кол-вом.

Результат записываю в БД в одну ячейку в виде: 1:2|2:5|3:7| и т.д. где сначала идет номер товара а потом кол-во и это все разделяю |.



	
$price_so=explode("|",$row[items]);
	
$i 0;
	

	
$sql_s "SELECT * FROM `sro_db_price` WHERE type=1 ORDER BY id ASC";
	
$result_s mysql_query($sql_s);
	
while (
$row_s mysql_fetch_array($result_s)) {
 
 
	
$price_so2=explode(":",$price_so[$i]);
 
	
	
if (
$row_s[id] == $price_so2[0]) {
	
	
$checked_so2="checked";
	
	
$amount $price_so2[1];
	
	
} else {
	
	
$checked_so2="";
	
	
$amount 1;
	
	
}
	
	

 
echo 
"<input type=\'checkbox\' name=\'items[]\' value=\'$row_s[id]\' $checked_so2> <input type=\'text\' size=1 name=\'q[]\' value=\'$amount\'> $row_s[item] [$row_s[czk] CZK / $row_s[eur] EUR]
\\n"
;
$i++;
}



Сама запись в БД выглядит так:


$amount 
count($_POST[\'items\']);
for($i = 0; $i < $amount; $i++) {
$string2 .= $_POST[\'items\'][$i] . ":" . $_POST[\'q\'][$i] ."|";
}
 
$sql="UPDATE `anketa` SET items=\'$string2\' WHERE id=$_POST[anketa]";



Проблема в том, что если я выбираю товары подряд - то все ок, стоит мне выбрать скажем 1,2 и 4, то у четвертого при записи БД пропадает правильное кол-во (записывается всегда 1, хотя скажем ввожу кол-во 5) а при отображении 4 товар вообще не отображается. Стоит мне его только в БД подправить на номер 3 (то есть чтобы шел сразу после 1 и 2) - то всё ОК.

Подскажите люди добрые, что я делаю не так. Вторые сутки над этим сижу и все никак не могу сделать.
WWW:  - Оптимизация и настройка компьютера

Оффлайн brainkiller

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 527
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Помогите с PHP: функция explode
« Ответ #1 : 21 Июля 2010, 10:43:59 »
У Вас не передаётся id товара из непомеченных чекбоксов.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28