从HTML表单访问值并存储在PHP变量中

时间:2017-02-11 05:48:30

标签: php html html-form-post

我正在尝试从HTML表单中访问一个值,但它没有正确导入。 我收到错误说明

  

未定义的符号$ numb

(我正在尝试将文字输入存储到 Intent intent=new Intent(this, AlarmService.class); AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); PendingIntent pendingIntent=PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); // PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, hour); // For 1 PM or 2 PM calendar.set(Calendar.MINUTE, minute); calendar.set(Calendar.SECOND, 0); long cuurent=calendar.getTimeInMillis(); alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent); )。

$numb

2 个答案:

答案 0 :(得分:0)

您在表单中提到的任何输入元素都会以键值对的形式发布到服务器(在您的情况下为php)。如果输入标记的name属性成为键,则input元素的value标记将成为值。

<?php 

    if(isset($_POST['submit'])) // this will always return false. there is no input named submit in your form 
    { 

        $numb=$_POST['text']; //this will never get initialized, $numb will be always undefined

    } 

?> 

这是检查

的正确方法
<?php 

    if(isset($_POST['text'])) 
    { 

        $numb=$_POST['text']; 

    } 

?> 

这应该有效

答案 1 :(得分:0)

我试过你的代码。问题从这里开始:

if (isset($_POST['submit'])) $numb=$_POST['text'];

如果未设置变量$_POST['submit'],则不会初始化变量$numb。因此,之后使用它(即if($numb<1)语句)将导致Undefined variable: numb

$flag类似的问题。

如果没有提交表单,我认为没有理由运行打印文本。也许你应该像这样重写它:

<html>
<body>
<?php

if (isset($_REQUEST['text'])) {
  $numb=$_REQUEST['text'];

  $flag=0; // initialize $flag to prevent error
  if($numb<1) {
    echo "Number < 1";
  } else if (100<$numb) {
    echo "Number > 100";
  } else if($numb==2) {
    echo "Prime";
  } else if($numb%2==0) {
    echo "Not Prime";
  } else {
    for($count=3;$count<sqrt($numb);$count=$count+2) {
      if($numb%$count==0) {
        $flag=1;
        break;
      }
    }
    if($flag==1) {
      echo "Not Prime";
    } else {
      echo "Prime";
    }
  }
}

?>
<form method="post" action="main.php">
  <input type="text" name="text"> <input type="submit" value="Submit" name="submit">
</form>
</body>
</html>