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


Автор: supervladislav 25.5.2006, 02:47
здрасте народ спасибо ,что можно к вам обратиться.
у меня есть такая вот форма что!то вроде 

Код

<html>
<?php Error_Reporting(E_ALL & ~E_NOTICE);?>
<form action="golos.php" method=post >
<br><input   name=on type=radio value="<?php  echo $_post["horosho"];?>"><br>    
<br><input  name=on type=radio value="<?php  echo $_post["ploho"] ;?>"><br>
<input name="submit" type="submit" value="проголосовать">
</form>
</html>

У меня к вам три  вопроса:
первый  обязательно ли в параметре value писать обращение к массиву $_post,так-как я проверял работает  и без этого.
И еще я ломаю голову как сделать так что!бы только один  параметр выбирался из radio Кнопок ,а не два.Понятное дело что атрибут name должен быть одинаков ,как тогда скрипт проверяющий формы будет распозновать какая кнопка нажата.
И еще как правильно  сравнивать данные из массива ?верно ли выражение написаное ниже.
Код

if ($_post["horosho"]==true) {$ot1=$ot1++;}
if ($_post["ploho"]==true) {$ot2=$ot2++;}
Мне по запросу 
Код

echo count($_post)

выдается ноль.
ниже приведен полный скрипт на выходе в файлах каждый раз выводится ноль.
Код

<?php
Error_Reporting(E_ALL & ~E_NOTICE);

$file1=fopen("golos1.dat", "r");
$file2=fopen("golos2.dat","r"); 
if ($_post["$horosho"]==true) {$ot1=$ot1++;}
if ($_post["$ploho"]==true) {$ot2=$ot2++;}
$a=fread($file1,150);
$b=fread($file2,150);
$c=$a+$ot1;
$n=$b+$ot2;
fclose($file1);
fclose($file2);
$file1=fopen("golos1.dat", "w+");
$file2=fopen("golos2.dat", "w+");
fwrite($file1,$c);
fwrite($file2,$n);
fclose($file1);
fclose($file2);

?>



 




  

Автор: madFobos 29.5.2006, 23:31
Вобще бред какой-то (не в обиду сказано)...  smile 

Цитата(supervladislav @  25.5.2006,  02:47 Найти цитируемый пост)
И еще я ломаю голову как сделать так что!бы только один  параметр выбирался из radio Кнопок ,а не два


У тебя что можно сразу два выбрать? Когда у radio имя одинаковое, то браузер не позволяет выбрать две кнопки одновременно.

Цитата(supervladislav @  25.5.2006,  02:47 Найти цитируемый пост)
<br><input   name=on type=radio value="<?php  echo $_post["horosho"];?>"><br>    
<br><input  name=on type=radio value="<?php  echo $_post["ploho"] ;?>"><br>


Вот это как работает? Кнопкам radio должны присваиваться значения, а не переменные, которых у тебя по идее никогда не будет (по идее из твоего скрипта.) Должно быть нечтно вроде:

Код

?>
<input   name=on type=radio value="0">
<input   name=on type=radio value="1">
<?


Цитата(supervladislav @  25.5.2006,  02:47 Найти цитируемый пост)
if ($_post["horosho"]==true) {$ot1=$ot1++;}
if ($_post["ploho"]==true) {$ot2=$ot2++;}


не $_post, а $_POST. И откуда у тебя возьмется $_POST['ploho']?

Код

if ($_POST['on'])
  $ot1++;
else
  $ot2++;



Цитата(supervladislav @  25.5.2006,  02:47 Найти цитируемый пост)
Мне по запросу 
Выделить всёкод PHP
1:
    
echo count($_post)


А чего ты ожидаешь? замени на $_POST.

Скрипт твой после всего этого должен заработать.  

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