Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > checkbox + post


Автор: dailik 4.1.2009, 18:49
люди у меня есть модуль там выводятся с БД каталог и сбоку нужно установить checkbox а тоесть чел отмечает эти checkbox-ы и внизу есть кнопка заказать надо чтоб данные передовались через ПОСТ и выводились на другой стр. в таблице как это легче делается? или с помощью джаваскрипта или через пост лучше? тоесть как легче? и как это сделать! 

например:  
Код

<input type="checkbox"  name="ВОТ ТУТ ЧТО НАДО ВЫВОДИТЬ?"  >
 
 

чтоб на следующей стр. выводились название этого поста и цена например на которых стояла галочка!

Автор: godvinn 4.1.2009, 18:58
ну вот так можно <input type="checkbox"  name="test[]"   />
а на следующей странице просто (та что у тебя указана в action) $_POST["test"] и перебираешь этот массив и все 
только каждому же чекбокчу присвой value в input 


Автор: dailik 4.1.2009, 20:24
ну значет примерно так 
Код

<input type="checkbox"  name="act["$res['id']"]"  value="$res['title']">


а на следующей стр. 


Код

$names=$_POST["test"];


echo $names;



он выведит все? или надо тип этого 

Код

$names1=$_POST["test1"];
$names2=$_POST["test2"];
$names3=$_POST["test3"];

echo $names1;
echo $names2;
echo $names3;



Автор: unicross 4.1.2009, 20:32
Код

echo '<input type="checkbox" name="act[]"  value="' . $res['id'] . '">' . $res['title'];


Код

$names=$_POST['act'];
print_r($names);

Автор: dailik 4.1.2009, 20:43
мне вот это выдает Array ( [0] => 40 [1] => 41 ) 

Автор: unicross 4.1.2009, 20:48
Цитата(dailik @  4.1.2009,  20:43 Найти цитируемый пост)
мне вот это выдает Array ( [0] => 40 [1] => 41 ) 

Это очень хорошо! Значит
Код

$names[0]=40 
$names[1]=41

Теперь можно это использовать. Замените print_r() на цикл и радуйтесь жизни. smile 

Автор: dailik 4.1.2009, 20:51
unicross

прошу помоги все дело в том  smile  что незнаю что дальше делать?

нужно вот в эту часть таблицв вывести это 

Код

<tr>
        <th bgcolor="#f1f1f1" scope="col"> название</th>
        <th bgcolor="#f1f1f1" scope="col"> тут я сам </th>
        <th bgcolor="#f1f1f1" scope="col">цена</th>
      </tr>

Автор: godvinn 4.1.2009, 21:12
ну тогда тебе еще сюда http://www.htmlbook.ru или http://php.su/learnphp/?syntax

Автор: unicross 4.1.2009, 21:16
Примерно так:
Код

if (isset($_POST['act'])) {
   $names=$_POST['act'];
   if (count($names) > 0) {
      $str = implode(", ", $names);
      $query = 'select * from <Имя таблицы> where id IN (' . $str . ')';
      $res = mysql_query($query);
      while ($pole = mysql_fetch_array($res)) {
         echo '<tr>';
         echo '  <th bgcolor="#f1f1f1" scope="col">' . $pole[0] . "</th>\n";
         echo ' <th bgcolor="#f1f1f1" scope="col">' . $pole[1] . "</th>\n";
         echo ' <th bgcolor="#f1f1f1" scope="col">' . $pole[2] . "</th>\n";
         echo '</tr>';
      }
   }
}

Писал на коленке без проверки. Возможны ошибки...

Автор: dailik 4.1.2009, 22:12
unicross, 

спасибо большоееее!!!!!!!
какрас точто я хотел!! smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)