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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Выделение нужной радиокнопки
 
 автор: franko   (30.01.2011 в 14:43)   письмо автору
 
 

Это рабочий код
<table>
<tr><td>Образование </td><td>
<input name="education" type="radio" value="1" <?php if ($myrow[education]==1) echo 'checked="checked"'?>> Среднее
<input name="education" type="radio" value="2" <?php if ($myrow[education]==2) echo 'checked="checked"'?>> Техникум
<input name="education" type="radio" value="3" <?php if ($myrow[education]==3) echo 'checked="checked"'?>> Высшее
</td></tr>
</table>

нужно вставить сюда, где ....
<?PHP 
if ($myrow['login'] == $login) {
echo 
"<table align='center'>
....
}
else


<tr><td>Образование</td><td>
<input name='education' type='radio' value='1' if ($myrow[education]==1)"; echo 'checked="checked"'; echo"> Среднее    
<input name='education' type='radio' value='2' if ($myrow[education]==3)"; echo 'checked="checked"'; echo"> Колледж/Техникум   
<input name='education' type='radio' value='3' if ($myrow[education]==3)"; echo 'checked="checked"'; echo"> Высшее
</td></tr>

Необходимо вывести уровень образования пользователя в виде выделенной радиокнопки через echo так этот код вставляется в <?php ?>.
К сожалению, ни одна кнопка не выделяется
Подскажите, пожалуйста, в чем ошибка

  Ответить  
 
 автор: cheops   (30.01.2011 в 14:48)   письмо автору
 
   для: franko   (30.01.2011 в 14:43)
 

Вы вставляете следующим образом?
<?PHP  
if ($myrow['login'] == $login) { 
?>
<table> 
<tr><td>Образование </td><td> 
<input name="education" type="radio" value="1" <?php if ($myrow['education']==1) echo 'checked="checked"'?>> Среднее 
<input name="education" type="radio" value="2" <?php if ($myrow['education']==2) echo 'checked="checked"'?>> Техникум 
<input name="education" type="radio" value="3" <?php if ($myrow['education']==3) echo 'checked="checked"'?>> Высшее 
</td></tr> 
</table>
<?php

else

  Ответить  
 
 автор: franko   (30.01.2011 в 15:05)   письмо автору
 
   для: cheops   (30.01.2011 в 14:48)
 

вставляю иначе
<?PHP   
if ($myrow['login'] == $login) {  
echo 
"<table align='center'>
<table>  
<tr><td>Образование </td><td>
<input name='education' type='radio' value='1' if (
$myrow[education]==1)"; echo 'checked="checked"'; echo"> Среднее&nbsp;&nbsp;&nbsp; 
<input name='education' type='radio' value='2' if (
$myrow[education]==3)"; echo 'checked="checked"'; echo"> Колледж/Техникум&nbsp;&nbsp;&nbsp;
<input name='education' type='radio' value='3' if (
$myrow[education]==3)"; echo 'checked="checked"'; echo"> Высшее
</td></tr>
</table>"
;}

else
{ echo 
"


education берется отсюда. При регистрации пользователь выбирает свое образование
<tr><td>Образование </td><td><input name="education" type="radio" value="1" > Среднее&nbsp;&nbsp;&nbsp;<input name="education" type="radio" value="2"> Колледж/Техникум&nbsp;&nbsp;&nbsp;<input name="education" type="radio" value="3"> Высшее</td></tr>

  Ответить  
 
 автор: sim5   (30.01.2011 в 15:28)   письмо автору
 
   для: franko   (30.01.2011 в 15:05)
 

Зачем так много echo? Значит вы получаете это из базы и при сравнении проблем быть не должно. Вот только вопрос - зачем зарегистрированному пользователю опять выбор его образования?

  Ответить  
 
 автор: cheops   (30.01.2011 в 16:06)   письмо автору
 
   для: franko   (30.01.2011 в 15:05)
 

Преобразуйте ваш код следующим образом
<?php 
if ($myrow['login'] == $login) {   
  echo 
"<table align='center'> 
  <table>   
  <tr><td>Образование </td><td> "
;
  
?>
  <input name='education' type='radio' value='1' <?php if ($myrow['education']==1)
  echo 
'checked="checked"'?>> Среднее&nbsp;&nbsp;&nbsp;  
  <input name='education' type='radio' value='2' <?php if ($myrow['education']==2)
  echo 
'checked="checked"'?>> Колледж/Техникум&nbsp;&nbsp;&nbsp; 
  <input name='education' type='radio' value='3' <?php if ($myrow['education']==3)
  echo 
'checked="checked"'?>> Высшее 
  <?php
  
echo "</td></tr> 
  </table>"
;

else 
{
  echo 
"...";
}

  Ответить  
 
 автор: franko   (31.01.2011 в 00:21)   письмо автору
 
   для: cheops   (30.01.2011 в 16:06)
 

Спасибо. Работает!

  Ответить  
 
 автор: lElectroHardl   (31.01.2011 в 16:32)   письмо автору
 
   для: cheops   (30.01.2011 в 16:06)
 

Не легче так?
<?php  
if ($myrow['login'] == $login) {    
  echo 
"<table align='center'>  
  <table>    
  <tr><td>Образование </td><td> "

  if (
$education == $myrow['education'])
    
$ch "checked='checked'";
  else
    
$ch "";
  echo 
"
  <input name='education' type='radio' value='1' 
$ch> Среднее&nbsp;&nbsp;&nbsp;   
  <input name='education' type='radio' value='2' 
$ch> Колледж/Техникум&nbsp;&nbsp;&nbsp;  
  <input name='education' type='radio' value='3' 
$ch> Высшее  
  
  </td></tr>  
  </table>"

}  
else  

  echo 
"..."
}

  Ответить  
 
 автор: sim5   (31.01.2011 в 16:41)   письмо автору
 
   для: lElectroHardl   (31.01.2011 в 16:32)
 

И что получится, если $education=1, к примеру?

  Ответить  
 
 автор: lElectroHardl   (31.01.2011 в 21:37)   письмо автору
 
   для: sim5   (31.01.2011 в 16:41)
 

По идеи будет (1 == 1)
Вообще, я не знаю, что в том массиве за данные. Я просто упрощенный вариант привел.

  Ответить  
 
 автор: sim5   (31.01.2011 в 21:39)   письмо автору
 
   для: lElectroHardl   (31.01.2011 в 21:37)
 

А при чем тут массив. Ваше решение будет устанавливать атрибут, как выбранная, всем радиокнопкам.

  Ответить  
 
 автор: sim5   (30.01.2011 в 14:48)   письмо автору
 
   для: franko   (30.01.2011 в 14:43)
 

Как только объясните, что такое $myrow[education] (имя нужно заключать в кавычки) и от куда взялось, так сразу получите ответ.

  Ответить  
Rambler's Top100
вверх

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