Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Замена данных
Форумы портала PHP.SU » » Вопросы новичков » Замена данных

Страниц (1): [1]
 

1. etoYA - 30 Ноября, 2011 - 12:15:02 - перейти к сообщению
В колонке таблицы (style) содержится айди стиля (музыки). Как лучше выводить, если нужно название вместо цифры?

PHP:
скопировать код в буфер обмена
  1. if ($row['style'] == 1) $row['style'] = 'название';
  2. ..........
  3. elseif ($row['style'] == 7) $row['style'] = 'название';


Или как ?
2. sKaa - 30 Ноября, 2011 - 12:30:02 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. switch($row['style']){
  2. case 1 : echo 1; break;
  3. case 7 : echo 7; break;
  4. default: echo 'unknown'; break;
  5. }
3. Самогонщик - 30 Ноября, 2011 - 12:39:14 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $styles = array(1 => "ololo", 2=>"pbl");
  2. echo $styles[$row['style']];
4. etoYA - 30 Ноября, 2011 - 13:13:09 - перейти к сообщению
Самогонщик, а вместо ololo и pbl можно вставить переменные? Точнее $row['id'] и $row['style'] ??
5. filkeith - 30 Ноября, 2011 - 13:17:33 - перейти к сообщению
etoYA пишет:
Самогонщик, а вместо ololo и pbl можно вставить переменные? Точнее $row['id'] и $row['style'] ??

Скорее это название направления. Т.о. Дергая из БД например 1 (которому соответствует к примеру "ololo") тогда

Выведет "ololo" без каких либо цифр, как раз
etoYA пишет:
название вместо цифры

и еще, а почему нельзя в таблице хранить и название стиля?
|id|style|
|1 |ololo|
|2 |pbl |

и т.д.
6. sKaa - 30 Ноября, 2011 - 13:18:18 - перейти к сообщению
etoYA пишет:

Самогонщик, а вместо ololo и pbl можно вставить переменные? Точнее $row['id'] и $row['style'] ??

Ты не понял конструкции которую он тебе описал Недовольство, огорчение..

Самогонщик пишет:

PHP:
скопировать код в буфер обмена
  1.  
  2.     $styles = array(1 => "ololo", 2=>"pbl");
  3.     echo $styles[$row['style']];



Попробую подробней описать :

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. $styles = array( 1 => 'Rap', 2 => 'Electro', 3 => 'Pop', 4 => 'Club' );
  4.  
  5. echo $styles[$row['style']];
  6. /*
  7. Если $row['style'] = 1 Выведет 'Rap',
  8. Если = 2 то Electro итд ..
  9. ...
  10. /*
  11.  
7. Самогонщик - 30 Ноября, 2011 - 13:19:30 - перейти к сообщению
Можно. А ещё можно сделать джойн в запросе (хотя тут я могу быть не прав, вдруг кеширование?)

Так же советую почитать http://www.php.su/learnphp/datatypes/?array
8. etoYA - 30 Ноября, 2011 - 16:57:21 - перейти к сообщению
решил сделать в 2 запроса..
CODE (SQL):
скопировать код в буфер обмена
  1. WHERE id={'$row['style_id']'}

 

Powered by ExBB FM 1.0 RC1