Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Групповое изменение данных

Сообщения:  [1-10]   [11-15] 

 
 автор: Hin   (11.07.2006 в 15:50)   письмо автору
 
   для: Trianon   (30.06.2006 в 17:31)
 

А выборку из базы можно делать по томуже принцыпу. Тоесть есть данные в виде массива, его пропускаю через implode, а дальше сравниваю с значениями в колонке базы и как вывести все совпадения??

$list = implode(',',$_POST['hide']);
mysql_query("SELET * from table WHERE id_ob IN($list)");

   
 
 автор: Trianon   (03.07.2006 в 13:00)   письмо автору
 
   для: Hin   (03.07.2006 в 12:09)
 

Вы пытаетесь данные передавать методом GET, поэтому в строке адреса появляются параметры. Обычно данные формы передают методом POST: <form method=post action=.... >

Если галку снять, этот чекбокс вообще передан не будет.
Так что чекбоксы можно оличать просто по наличию их в списке.
Соответственно, каких-то конкретных значений им присваивать необязательно и уж коль скоро name = hide[$id] задано, то value='1' равно как и value=".$object['hide']." писать смысла нет.

   
 
 автор: Hin   (03.07.2006 в 12:09)   письмо автору
 
   для: Trianon   (30.06.2006 в 17:31)
 

Не работает, в строке пишет какуюто чушь
index.php?hide%5B11%5D=1&hide%5B35%5D=1
И еще у меня вот такой вопрос, проверка на наличие галки осуществляется так

if($object['hide'] == "1"){
        echo "<TD class='np'><div align='center'><input name='hide[".$object['id_ob']."]' type='checkbox' value=".$object['hide']."></div></TD>";
    }else{
        echo "<TD class='np'><div align='center'><input name='hide[".$object['id_ob']."]' CHECKED type='checkbox' value='1'></div></TD>";
    }

Помойму я немного намудрил, когда checkbox выделен (CHECKED), то когда галку снимаешь, hide'y значение 1 будет присваеваться??

   
 
 автор: Trianon   (30.06.2006 в 17:31)   письмо автору
 
   для: Hin   (30.06.2006 в 16:00)
 

Да, конечно, я ошибся с атрибутом тега. )
можно и одним запросом, что-то вроде:

$list = implode(',',$_POST['hide']);
mysql_query("UPDATE table SET hide=1  WHERE id_ob IN($list)");

   
 
 автор: Hin   (30.06.2006 в 16:00)   письмо автору
 
   для: Trianon   (30.06.2006 в 15:22)
 

А так можно??

<TD><div align='center'><input name='hide[".$object['id_ob']."] ' type='checkbox' value='".$object['hide']."'></div></TD>


А разве он будет кидать в массив данные об id_ob?
То тогда чтобы мне обновить данные для каждого этемента надо будет сделать такой запрос


for(i=0;$i<count($_POST['hide']);$i++){ mysql_query("UPDATE table SET hide="1" WHERE id_ob=".$_POST['hide'][$i].";");}

   
 
 автор: Trianon   (30.06.2006 в 15:22)   письмо автору
 
   для: Hin   (30.06.2006 в 14:46)
 

Как-то так...

while($object=@mysql_fetch_array($query_view)) 
   { 
     if($cur_class == "r1"){ 
        $cur_class="r2"; 
    }else{ 
        $cur_class="r1"; 
    } 
     
    echo "<TR class=".$cur_class."> 
    <TD><STRONG>".$object['id_ob']."</STRONG></TD> 
    <TD>".$object['date']."</TD> 
    <TD><A title='".$object['comment']."' href='index.php?edit=".$object['id_ob']."'>".$object['comment']."</A></TD> 
    <TD><div align='center'><input name=hide type='checkbox[".$object['id_ob']."]' value='".$object['hide']."'></div></TD> 
    <TD><A href='index.php?delete=".$object['id_ob']."'><IMG src='del.png'></A></TD></TR>"; 
   } 

На входе скрипта окажется $_POST['checkbox'] , являющийся массивом, проиндексированным значениями столбца id_ob Вашей таблицы

   
 
 автор: Hin   (30.06.2006 в 14:46)   письмо автору
 
   для: Trianon   (27.06.2006 в 18:52)
 


 while($object=@mysql_fetch_array($query_view))
   {
     if($cur_class == "r1"){
        $cur_class="r2";
    }else{
        $cur_class="r1";
    }
    
    echo "<TR class=".$cur_class.">
    <TD><STRONG>".$object['id_ob']."</STRONG></TD>
    <TD>".$object['date']."</TD>
    <TD><A title='".$object['comment']."' href='index.php?edit=".$object['id_ob']."'>".$object['comment']."</A></TD>
    <TD><div align='center'><input name=hide type='checkbox' value='".$object['hide']."'></div></TD>
    <TD><A href='index.php?delete=".$object['id_ob']."'><IMG src='del.png'></A></TD></TR>";
   }


Вот, как быть??

   
 
 автор: Trianon   (27.06.2006 в 18:52)   письмо автору
 
   для: Hin   (27.06.2006 в 18:49)
 

не "Да", а продолжите оператор echo.
Сформируйте им эти поля.
А потом мы вместе поправим.

   
 
 автор: Hin   (27.06.2006 в 18:49)   письмо автору
 
   для: Trianon   (27.06.2006 в 18:28)
 

Да

   
 
 автор: Trianon   (27.06.2006 в 18:28)   письмо автору
 
   для: Hin   (27.06.2006 в 16:49)
 

как вывдится строка таблицы?

while($row = mysql_fetch_array($res))
{
      echo ???
}

   

Сообщения:  [1-10]   [11-15] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования