0

我在我的页面中使用了 php 代码,但它在 localhost 中不起作用,在我给出的文本框和选择框中显示了未定义的变量,如下所示:

$propertyid = ereg_replace("[^A-Za-z0-9-]", "", $_POST['propertyid']); 
$propertyname = ereg_replace("[^A-Za-z0-9]", "", $_POST['propertyname']); 
$propertytype = ereg_replace("[^A-Z a-z0-9]", "", $_POST['propertytype']); 
$propertydealtype = ereg_replace("[^A-Z a-z0-9]", "", $_POST['propertydealtype']);
$propertystreet = ereg_replace("[^A-Z a-z0-9]", "", $_POST['propertystreet']);




<td width="249" align="left" valign="middle">PropertyID:</td>
  <td width="739"><input name="propertyid" type="text" value="<?php echo "$propertyid"; ?>" /></td>
</tr>
    <tr>
  <td width="249" align="left" valign="middle">PropertyName:</td>
  <td width="739"><input name="propertyname" type="text" value="<?php echo "$propertyname"; ?>" /></td>
</tr>
<tr>
  <td align="left" valign="middle">Property Type:</td>
  <td><select name="propertytype">
  <option value="<?php echo "$propertytype"; ?>"><?php echo "$propertytype"; ?></option>
  <option value="Appartment/Fla">Appartment/Flat</option>
  <option value="Farm House">Farm House</option>
  <option value="Guest House">Guest House</option>
  <option value="Lord">Lord</option>
  <option value="Hostel">Hostel</option>
  </select></td>
</tr>
    <tr>
  <td align="left" valign="middle">Deal Type:</td>
  <td><select name="propertydealtype">
    <option value="<?php echo "$propertydealtype"; ?>"><?php echo "$propertydealtype"; ?></option>
    <option value="For Sale">For Sale</option>
    <option value="For Rent">For Rent</option>
    <option value="For Lease">For Lease</option>
    <option value="Ejara">Ejara</option>
    <option value="Sar Qulfi">Sar Qulfi</option>
  </select></td>

<tr>
  <td align="left" valign="middle">Property Streeet:</td>
  <td><input name="propertystreet" type="text" value="<?php echo "$propertystreet"; ?>" /></td>
</tr>

每当我在本地主机中执行时,每个盒子里面都会收到盒子里面的错误。

4

3 回答 3

0

我不确定 ereg_replace 是如何工作的,但首先它已被弃用,其次 - 我认为表达式之间不能有空格 => "[^AZ a-z0-9]" 应该是 "[^A-Za -z0-9]"

于 2013-04-05T14:00:45.203 回答
0

在回声期间,变量不需要用引号引起来。所以最好是这样:

    <?php echo $propertytype; ?>. 

未定义的变量错误意味着可能 $_POST 未定义。但在这种情况下,您也应该在那里得到错误。

来自关于函数 ereg_replace 的 php 页面:从 PHP 5.3.0 开始,该函数已被弃用。强烈建议不要依赖此功能。

于 2013-04-05T14:44:34.327 回答
0

您的input标签应该在form标签内...您的form标签在哪里? $_POST从一个检索您的输入数据form

于 2013-04-05T14:10:11.863 回答