2012-05-24 4 views
0

Это для онлайн-формы для возврата продукта. Пользователь выбирает из меню «Возврат», «Замена», «90DaysExpired» и т. Д. (Варианты показаны ниже). Каждый из этих вариантов имеет соответствующее сообщение (внутри переменной, также показанной ниже). Я хочу, чтобы значение переменной ($ tbrefund, $ tbreplace и т. Д.) Было основано на выборе пользователя для передачи переменной $ message.вытягивание определенной переменной из массива в php

Это то, что я до сих пор, и я получаю следующее сообщение об ошибке:

Примечание: Undefined переменной: сообщение

$Rarray = array(
"Refund" => "$tbrefund", 
"Replacement" => "$tbreplace", 
"90DaysExpired" => "$expiredwarranty", 
"ContactTech" => "$contacttech", 
"RefundExpiredReplace" => "$outsiderefund", 
"NoExRefund" => "$noexchange", 
"ManuWarranty" => "$manuwarranty", 
); 

if (isset($Rarray[$Request])) 
    $message = $Rarray[$Request]; 

Любая помощь очень ценится.

редактировать: это линия производит ошибку, я уже знаю, что это не Релевент ...

$send_contact=mail($to,$subject,$message,$header); 

Почему вы downvote кого-то с просьбой о помощи? Это заставит новых людей неохотно спросить ...

+2

Это уведомление не выдается кодом, который вы указываете. Покажите нам фактический код. – Jon

+2

вы попробовали «echo $ Request», чтобы проверить, что на самом деле отправлено правильно? – Laurence

+0

вы получаете downvoted для плохо сформулированных вопросов, когда недостаточно информации/тестирования/усилий сделано не потому, что сам вопрос плох для каждого ответа. – Laurence

ответ

2

Ошибка в том, что $ Request установлен неправильно.

if (isset($Rarray[$Request])) 
{ 
    $message = $Rarray[$Request]; 
} 
else 
{ 
    $message = "Invalid"; 
} 

Так ваш фактический вопрос является «почему $ Запрос не работает»?

Ответ зависит от того, откуда поступает запрос $ Request, поэтому вам нужно показать нам несколько примеров $ Request echoed (или var_dump()), но я бы рискнул предположить, что вы отправляете $ Request строчный (если он через URL-адрес или что-то еще), но ваш массив имеет заглавные буквы.

Редактировать: и я надеюсь, что вы не ожидаете, что ваши сообщения будут чем-то иным, чем «$ tbreplace» или чем-то еще.

Я предполагаю, что вы хотели сделать что-то подобное?

$Rarray = array(
"Refund" => $tbrefund, 
"Replacement" => $tbreplace, 
"90DaysExpired" => $expiredwarranty, 
"ContactTech" => $contacttech, 
"RefundExpiredReplace" => $outsiderefund, 
"NoExRefund" => $noexchange, 
"ManuWarranty" => $manuwarranty 
); 
+0

Это действительно помогло. Это проблема с $ Request. Не зная, как спросить, что спросить, или зная, какая информация будет актуальной, это проблема с тем, чтобы быть новичком. Приношу свои извинения за недостаточную информацию или формулировку моего вопроса. Все, что работает сейчас, как планировалось. Я ценю вашу помощь. – jft5000

+0

все хорошее - его опыт обучения - рад, что мы могли бы помочь и поприветствовать StackOverflow – Laurence

Смежные вопросы