PHP和JS“获取”问题

时间:2011-09-01 18:21:28

标签: php get

你好,这是我的代码:

<script type="text/javascript">
function changePage()
{
    selectedValue = document.forms['f1'].s1.value;
    newLocation = "http://127.0.0.1:8080/PolPlan/branze.php?page="+selectedValue;
    window.locatoion = newLocation;
}
</script>

<form name="f1">
   <select name="s1" onChange="javascript:changePage()">
      <option value="1">strona 1</option>
      <option value="2">strona 2</option>
   </select>
</form>

<?php

$selectedValue = $_GET['s1']; 
echo $selectedValue;

?>

我在网上收到错误: “$ selectedValue = $ _GET ['s1'];” 错误消息:注意:未定义的索引:s1 请帮帮我。

6 个答案:

答案 0 :(得分:1)

尝试使用isset:

if (isset($_GET['s1'])) {
$selectedValue = $_GET['s1'];
echo $selectedValue;
}

还要确保GET中的变量与“s1”相同。它看起来应该是“页面”。

if (isset($_GET['page'])) {
$selectedValue = $_GET['page'];
echo $selectedValue;
}

答案 1 :(得分:1)

PHP说数组$ _GET的索引's1'不存在。试试这个:

<script type="text/javascript">
function changePage()
{
    document.forms[0].submit(); // Crossbrowser instruction
}
</script>

<form name="s1" action="http://127.0.0.1/PolPlan/branze.php">
   <select name="s1" onChange="javascript:changePage()">
      <option value="1">strona 1</option>
      <option value="2">strona 2</option>
   </select>
</form>

<?php

$selectedValue = isset($_GET['s1']) ? $_GET['s1'] : ''; 
echo $selectedValue;

?>

答案 2 :(得分:0)

更改

$selectedValue = $_GET['s1']; 

$selectedValue = $_GET['page']; 

如果你想使用s1,你需要提交表格

<form name="f1" action="/PolPlan/branze.php" method="get">
<select name="s1" onChange="document.forms['f1'].submit()">

答案 3 :(得分:0)

<script type="text/javascript">
function changePage()
{
    selectedValue = document.forms['f1'].s1.value;
    newLocation = "http://127.0.0.1:8080/PolPlan/branze.php?page="+selectedValue;
    window.locatoion = newLocation;
}
</script>

<form name="f1">
   <select name="s1" onChange="javascript:changePage()">
      <option value="1">strona 1</option>
      <option value="2">strona 2</option>
   </select>
</form>

<?php

$selectedValue = $_GET['page']; 
echo $selectedValue;

?>

s1未定义,因为它不作为$ _GET的元素存在。如果你想知道那个值的标识符,那就是URL中=左边的内容,而不是表单元素的名称(在这种情况下 - 这不一定是这种情况,比如说,POST)

答案 4 :(得分:0)

您要将值发送为

$_GET['page']

答案 5 :(得分:0)

Tyr this:

<script type="text/javascript">
function changePage()
{
    selectedValue = document.forms['f1'].s1.value;
    if (selectedValue == 0) {
        alert("Please select a valid option");
    } else {
        newLocation = "http://127.0.0.1:8080/PolPlan/branze.php?page="+selectedValue;
        window.location = newLocation;
    }
}
</script>

<form name="f1">
   <select name="s1" onChange="javascript:changePage()">
      <option value="0">Select...</option>
      <option value="1">strona 1</option>
      <option value="2">strona 2</option>
   </select>
</form>

<?php
if (isset($_GET['s1'])) {
    $selectedValue = $_GET['s1']; 
    echo $selectedValue;
}
?>

您可以删除php代码。

希望对你有用。