[英]PHP isset post condition doesn't execute
我有一個使用 post 方法提交更改的表單,我認為我沒有很好地使用 isset function,因為在提交時我的頁面上沒有任何更改,我應該在我的頁面上顯示產品。
這是我的表格:
<form method="post" style="margin-left:5px; margin-right: 5px; margin-bottom: 10px;" name="myform">
<select size="1" onblur="this.size = 1" onchange="myform.submit();" class="form-control" id="filterText">
<option selected value="">Cat gories</option>
<option name="sofa" value="sofa">Canap s</option>
<option name="bed" value="bed">Lits</option>
</select>
</form>
這是同一個文件的表單之后的 isset 條件:
if(isset($_POST["sofa"])){
$url="https://sik.search.blue.cdtapps.com/fr/fr/product-list-page/more-products?sessionId=22037cc5-f73c-4f71-a1d4-a90285da1789&category=fu003&sort=RELEVANCE&start=0&end=275&c=lf&v=20201118";
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
$result = curl_exec($ch);
$products = json_decode($result, true);
curl_close($ch);
echo '<div id="wrap" class="wrap">';
foreach ($products['moreProducts']['productWindow'] as $items)
{
echo '<div class="bed_images" id="bed">';
echo '<img data-enlargeable class="images" src=' . $items['mainImageUrl'] . '?f=xxs' . '/>';
echo '<h2 class="img_title">' . $items['name'] . '</h2>';
echo '<p class="img_price">' . $items['priceNumeral'] . ' ^b ' . '</p>';
echo '<p class="img_description">' . $items['typeName'] . '</p>';
echo '</div>';
}
echo '</div>';
} elseif (isset($_POST["bed"])){
$url="https://sik.search.blue.cdtapps.com/fr/fr/product-list-page/more-products?sessionId=22037cc5-f73c-4f71-a1d4-a90285da1789&category=bm003&sort=RELEVANCE&start=0&end=275&c=lf&v=20201118";
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
$result = curl_exec($ch);
$products = json_decode($result, true);
curl_close($ch);
echo '<div id="wrap" class="wrap">';
foreach ($products['moreProducts']['productWindow'] as $items)
{
echo '<div class="bed_images" id="bed">';
echo '<img data-enlargeable class="images" src=' . $items['mainImageUrl'] . '?f=xxs' . '/>';
echo '<h2 class="img_title">' . $items['name'] . '</h2>';
echo '<p class="img_price">' . $items['priceNumeral'] . ' ^b ' . '</p>';
echo '<p class="img_description">' . $items['typeName'] . '</p>';
echo '</div>';
}
echo '</div>';
} else {
$url="https://sik.search.blue.cdtapps.com/fr/fr/product-list-page/more-products?sessionId=22037cc5-f73c-4f71-a1d4-a90285da1789&category=fu001&sort=RELEVANCE&start=0&end=275&c=lf&v=20201118";
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
$result = curl_exec($ch);
$products = json_decode($result, true);
curl_close($ch);
echo '<div id="wrap" class="wrap">';
foreach ($products['moreProducts']['productWindow'] as $items)
{
echo '<div class="bed_images" id="bed">';
echo '<img data-enlargeable class="images" src=' . $items['mainImageUrl'] . '?f=xxs' . '/>';
echo '<h2 class="img_title">' . $items['name'] . '</h2>';
echo '<p class="img_price">' . $items['priceNumeral'] . ' ^b ' . '</p>';
echo '<p class="img_description">' . $items['typeName'] . '</p>';
echo '</div>';
}
echo '</div>';
}
?>
else 條件得到驗證,因為我的頁面上一直顯示最后一個 url 產品(表單提交之前和之后)所以我的問題是我認為我對 isset 條件的誤解。
您必須命名您的<select>
標記並使用它的值:
<form method="post" style="margin-left:5px; margin-right: 5px; margin-bottom: 10px;" name="myform">
<!-- v--------------v----- Check this -->
<select name="furniture" size="1" onblur="this.size = 1" onchange="myform.submit();" class="form-control" id="filterText">
<option selected value="">Cat gories</option>
<option value="sofa">Canap s</option>
<option value="bed">Lits</option>
</select>
</form>
if(isset($_POST["furniture"]))
{
if ($_POST["furniture"] === "sofa")
{
// your code for sofa
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.