在PHP内部的一些嵌套PHP中遇到一些麻烦。
让以下代码可以自行运行。
echo "<select>";
foreach($all_rooms as $val) {
echo "<option> $val </option>";
}
echo "</select>";
但是,当我尝试将其放在嵌套在PHP块中的HTML中时,它似乎不起作用:
<select id = "room_change'.$booking_id["{$id}"].'" hidden>
'.
foreach($all_rooms as $val) {
"<option>$val </option>";
}
.'
</select>
我也尝试过以下似乎不起作用的代码:
<select id = "room_change'.$booking_id["{$id}"].'" hidden>
'. foreach($all_rooms as $val) {
.'<option>'.$val .'</option>'.;
}
.'
</select>
值得注意的是,此代码嵌套在PHP标记中。完整的,有些不相关的代码:
<?php
echo '<!-- BEGIN content -->
<div id="booking_Requests">
<p>
Name : '.$fname["{$id}"] . ' '.$lname["{$id}"].' </br>
Phone Number : '.$mobile["{$id}"].' </br>
Date : '.$newdate.' </br>
Time : '.$fstart_Time["$id"].' to '.$fend_Time["{$id}"].' </br>
<!-- Displays the requested room -->
Requested room : <label id = "requested_room'.$booking_id["{$id}"].'" visible>'.$room["{$id}"].' </label>
<!-- Hidden Select box that is displayed when user clicks the alter button -->
<select id = "room_change'.$booking_id["{$id}"].'" hidden>
'.
foreach($all_rooms as $val) {
"<option>$val </option>";
}
.'
</select>
<!-- Label that dispays whether or not the room is available -->
<label id = "room_available'.$booking_id["{$id}"].'"> |||| '.$room_blah.'</label>
<!-- Button that allows the user to alter the selected room, calls the function
alterRoomFunc -->
<button type ="button" id = "alter_room'.$booking_id["{$id}"].'"
onclick="alterRoomFunc('.$booking_id["{$id}"].')"> Alter </button>
</br>
Booking ID: '.$booking_id["{$id}"].' </br>
<button type="button" id="'.$booking_id["{$id}"].'"
onclick="accFunc('.$booking_id["{$id}"].')">Accept</button>
<button type="button" id="'.$booking_id["{$id}"].'"
onclick="rejFunc('.$booking_id["{$id}"].')">Reject</button>
</p>
</br>
</div>
'
;
}
?>
答案 0 :(得分:1)
您的代码中存在许多问题。当您使用PHP代码时,您必须打开php选项卡。如果您想在屏幕上打印某些内容,则必须echo
<?php
echo "<select id = 'room_change".$booking_id[$id]."' hidden>";
foreach($all_rooms as $val) {
echo "<option>$val</option>"; // OR
// echo '<option>'.$val.'</option>';
}
?>
</select>
答案 1 :(得分:0)
这是另一种方法:
Profile
答案 2 :(得分:0)
这是你的代码工作。 ** /!\这不是你编写代码的最好方法但是你似乎不太了解PHP的工作方式/!\ **
尝试了解我的代码和您所犯的错误。我再说一遍,这不是最好的方法,但作为一个初学者,这是你应该做的。问我任何你不知道的东西。在这里,您将学习如何逃避引号,并且除了循环之外,您必须回应所有内容。
写句子的最佳方法是每次使用<p></p>
而不是<br/>
。打开<p>
,输入你的名字,然后关闭它。因为您使用的是多行但只有一行<p>
<?php
/* BEGIN content */
echo '<div id=\'booking_Requests\'>';
echo '<p>';
echo 'Name : '.$fname[$id].' '.$lname[$id].' </br>';
echo 'Phone Number : '.$mobile[$id].' </br>';
echo 'Date : '.$newdate.' </br>';
echo 'Time : '.$fstart_Time[$id].' to '.$fend_Time[$id].' </br>';
/* Displays the requested room */
echo 'Requested room : <label id = \'requested_room'.$booking_id[$id].'\' visible>'.$room[$id].' </label>';
/* Hidden Select box that is displayed when user clicks the alter button */
echo '<select id = \'room_change'.$booking_id[$id].'\' hidden>';
foreach($all_rooms as $val) {
echo "<option>$val</option>";
}
echo ' </select>';
/* Label that dispays whether or not the room is available */
echo '<label id = \'room_available'.$booking_id[$id].'\'> |||| '.$room_blah.'</label>';
/* Button that allows the user to alter the selected room, calls the function
alterRoomFunc */
echo '<button type =\'button\' id = \'alter_room'.$booking_id[$id].'\'
onclick=\'alterRoomFunc('.$booking_id[$id].')\'> Alter </button>';
echo '</br> ';
echo 'Booking ID: '.$booking_id[$id].' </br>';
echo '<button type=\'button\' id=\''.$booking_id[$id].'\'
onclick=\'accFunc('.$booking_id[$id].')\'>Accept</button>';
echo '<button type=\'button\' id=\''.$booking_id[$id].'\'
onclick=\'rejFunc('.$booking_id["{$id}"].')\'>Reject</button>';
echo '</p>';
echo '</br>';
echo '</div>';
}
?>
答案 3 :(得分:0)
这应该有效:
<?php
echo "<select id = \"room_change " . $booking_id[$id] . "\" hidden> ";
foreach($all_rooms as $val) {
echo "<option>". $val ."</option>";
}
echo "</select>";
?>
答案 4 :(得分:0)
xmlns:mui="clr-namespace:FirstFloor.ModernUI.Windows.Controls;assembly=FirstFloor.ModernUI"
<?php
echo "
<select id=\"room_change",$booking_id[$id],"\">";
{
foreach($all_rooms as $val)
echo "<option>$val</option>";
}";
echo "</select>";