2017-02-14 22 views
0

Я получаю сообщение об ошибке со следующими линиями:Проблема с PHP конкатенации

$get = mysql_fetch_assoc($result);  
$id = $_REQUEST['id']; 
echo '<form action="invoices.php?id=$id" method="POST">'; 
echo '<label>Invoice ID: </label>'. $id. '<br>'; 
echo '<label>User ID: </label>'. $get['customer_id']. '<br>'; 
echo '<label>Set Status: </label> <select name="status" id="status"> 
<option value="Unpaid"'.**if($get[/'status/'] == "Unpaid"**){ echo " selected";}.'>Unpaid</option> 
<option value="Paid"'.**if($get[/'status/'] == "Paid"**){ echo " selected";}.'>Paid</option> 
<option value="Cancelled"' **.if($get[/'status/'] == "Cancelled"**){ echo " selected";}.'>Cancelled</option> 
</select>'; 

Ошибка это показывает неожиданное Если оператор на линии хх

вопрос с PHP конкатенации двух строк .. Может кто-нибудь мне помочь исправить утверждения if?

+0

Каковы эти звездочки? Ваш код кажется очень неправильным. Попробуйте использовать что-то вроде: 'echo ''; ' –

ответ

0

Я предпочитаю это форматирование:

echo '<form action="invoices.php?id=' . $id . '" method="POST">'; 
echo '<label>Invoice ID: </label>'. $id. '<br>'; 
echo '<label>User ID: </label>'. $get['customer_id']. '<br>'; 
echo '<label>Set Status: </label> 
    <select name="status" id="status"> 
     <option value="Unpaid"' . ($get['status'] == 'Unpaid' ? ' selected' : '') . '>Unpaid</option> 
     <option value="Paid"' . ($get['status'] == 'Paid' ? ' selected' : '') . '>Paid</option> 
     <option value="Cancelled"' . ($get['status'] == 'Cancelled' ? ' selected' : '') . '>Cancelled</option> 
    </select>'; 
+0

Но вы не используете инструкцию If? Как будет отображаться выбранная для сохраненного значения? – Sohail

+0

О, я понял. Позвольте мне попробовать это! – Sohail

0

Как насчет этого?

$get = mysql_fetch_assoc($result);  
$id = $_REQUEST['id']; 
echo '<form action="invoices.php?id=' . $id . '" method="POST">'; 
echo '<label>Invoice ID: </label>'. $id. '<br>'; 
echo '<label>User ID: </label>'. $get['customer_id']. '<br>'; 
echo '<label>Set Status: </label> <select name="status" id="status"> 
<option value="Unpaid"'; if($get['status'] == "Unpaid"){ echo "selected"; } echo '>Unpaid</option> 
<option value="Paid"'; if($get['status'] == "Paid"){ echo "selected"; } echo '>Paid</option> 
<option value="Cancelled"'; if($get['status'] == "Cancelled"){ echo " selected";} echo '>Cancelled</option> 
</select>'; 

На самом деле не присоединяется к строкам, но это поможет вам.

+1

$ id в действии формы не будет заменен, поскольку используются одиночные кавычки. – Cashbee

+0

Исправить, исправить. – Areeb