Использование флажков для извлечения внешнего ключа, имени и значения из mysql - PullRequest
2 голосов
/ 28 февраля 2012

Я работаю над системой сравнения, как и система сравнения verizon wirelesses.Я извлекаю 30 телефонов из базы данных, и мне нужно использовать флажки, чтобы выбрать, какие телефоны я хочу сравнивать друг с другом.У меня есть таблица с именем телефона и URL-адресом изображения, который работает нормально.Моя проблема в том, как получить prodFK, Name и value, как показано ниже, чтобы я мог сравнить каждый телефон друг с другом.Я действительно надеюсь, что кто-то достаточно терпелив, чтобы помочь мне с этим.Это мой код для отображения телефонов.

    $data = mysql_query("SELECT * FROM product") 
or die(mysql_error());
$numrows = (mysql_num_rows ($data));


//loop for rows
if($numrows >0)
{
    echo "<table width = 100% border = '1' cellspacing = '2' cellpadding = '0'>";

//loop for columns
    $position = 1;
    while ($phones = mysql_fetch_array($data)){
        if($position == 1){
            echo "<tr>";}
            echo " <td>"."<img src='".$phones['pictureURL']."' title='".$phones['name']."'/><br /><input type='checkbox' title='".$phones['name']."'/></td> ";
            if($position == 6)
            {
                echo "</tr> "; $position = 1;
            }
            else{
                $position++;
            }
        }

$end = "";
if($position != 1){
for($z=(6-$position); $z>0 ; $z--){
$end .= "<td></td>";
}
$end .= "</tr>";
}

echo $end."</table> ";

enter image description here enter image description here enter image description here

1 Ответ

3 голосов
/ 28 февраля 2012

Ваш input не имеет ни имени, ни значения:

<input type='checkbox' title='".$phones['name']."'/>

Вам нужно дать этому имя и значение, тогда вы будете знать, что они выбрали:

"<input type='checkbox' title='".$phones['name']."' name='selection[]' value='".
$phones['id']."'/>"

Затем вы можете получить доступ к $_REQUEST['selection'] (который будет массивом), чтобы увидеть, какие телефоны они выбрали:

if(isset($_REQUEST['selection']) && is_array($_REQUEST['selection'])) {
  $where = array();
  foreach($_REQUEST['selection'] as $id) $where[] = "`id`=".intval($id);
  $where = join(' OR ',$where);
  $data = mysql_query("SELECT * FROM product WHERE $where") or die(mysql_error());
  $numrows = (mysql_num_rows ($data));
  // Display a table of all selected phones' specs
} else {
  $data = mysql_query("SELECT * FROM product") or die(mysql_error());
  $numrows = (mysql_num_rows ($data));
  // Display a selection of all phones to select and compare
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...