2011-01-27 6 views
0

Я получил эту функцию переключателя, который предполагают, чтобы получить значение параметра, передаваемого в строке запроса, и на нем решить значение переменной:переключатель переменная функция не показывая

<?php 

switch($_REQUEST['textcolor']){ 
case "white": 
$textcolor = $white; 
break; 
case "black": 
$textcolor = $black; 
break; 
} 

?> 

$_REQUEST получает это значение по этой ссылке:

<a href="index2.php?status=Busy&codigo2=<?php echo $codigo2; ?>&textcolor=white"> 

и это та форма, в которой у меня есть скрытый элемент, который, предположим, чтобы показать значение, но не делает:

<form> 
      <input type="hidden" value="<?= $textcolor ?>"> 
     </form> 

Любые идеи, почему переменная $textcolor не отображается?

EDIT: Решено, причина была действительно измененной, а не объявленной. Благодаря!

+1

последний case Что '$ white' или' $ black'? Объявляются ли они ранее? –

+0

Посмотрите на комментарий ниже - попробовали объявить их раньше, не успев. – t0mgs

ответ

1
switch($_REQUEST['textcolor']){ 
    case "white": 
     $textcolor = $white; 
     break; 
    case "black": 
     $textcolor = $black; 
     break; 
} 

Где белые и чёрные черные?

EDIT

Do:

$white = 'white'; 
$black = 'black'; 

switch($_REQUEST['textcolor']){ 
    case "white": 
     $textcolor = $white; 
     break; 
    case "black": 
     $textcolor = $black; 
     break; 
} 

и посмотреть, что происходит

+0

Где-то после: '$ white = imagecolorallocate ($ image2, 255, 255, 255); $ gray = imagecolorallocate ($ image2, 128, 128, 128); $ black = imagecolorallocate ($ image2, 0, 0, 0); ' – t0mgs

+0

Трейд, вставляющий переменные перед функцией-no go. – t0mgs

+0

Они должны быть объявлены ранее, чтобы использоваться. –

1

Добавить в switch

default: 
    die('textcolor is not '.$black.' or '.$white); 
break; 
Смежные вопросы