0

我尝试通过 post 函数创建一个从公式获取的查询。post 函数必须传递一个文本和一个 int 变量来创建发送到数据库的查询。

当我开始执行我的 php 脚本时,它说:未定义的索引,用于 int 变量。

我不明白为什么无法识别 int 变量。这是我的代码:

公式04.php

<form action="selection_jeux.php" method="post">
    <p>
    Nom
    <input type="text" name="possesseur"/>
        Prix maximum
    <input type="int" name="prixmax"/>
    <input type="submit" value="Valider"/>
    </p>
</form>

selection_jeux.php

<?php
    try
    {
        $bdd = new PDO('mysql:host=localhost;dbname=test' , 'root', '');
    }
    catch(Exception $e)
    {
        die('Erreur : '.$e->getMessage());
    }
    $req = $bdd->prepare('SELECT nomselec, prix FROM jeux_video WHERE possesseur = :possesseur AND prix <= :prixmax');
    $req->execute(array('possesseur'=> $_POST['possesseur'], 'prixmax'=> $_POST['prixmax']));

    echo '<ul>';

    while($donnees = $req->fetch())
    {
        echo '<li>'  . $donnees['nom'] . ' (' . $donnees['prix'] . ' EUR)</li>'; 
    }
    echo '<li>';

    $req->closeCursor();
?>
4

4 回答 4

2

哦,

好吧,这只是基本的 HTML

<input type="text">

并不意味着内容将是一个字符串,它只是一种输入。

<input type="int">只是不存在...

接受的输入类型 (HTML4)

  • 按钮
  • 复选框
  • 文件
  • 图片
  • 密码
  • 收音机
  • 重启
  • 提交
  • 文本

接受的输入类型 (HTML5)

  • 按钮
  • 复选框
  • 颜色
  • 日期
  • 约会时间
  • 本地日期时间
  • 电子邮件
  • 文件
  • 图片
  • 数字
  • 密码
  • 收音机
  • 范围
  • 重启
  • 搜索
  • 提交
  • 电话
  • 文本
  • 时间
  • 网址
  • 星期
于 2012-09-07T12:19:18.933 回答
1

因为没有称为 int 的输入类型。

http://de.selfhtml.org/html/referenz/attribute.htm#input

于 2012-09-07T12:19:13.437 回答
1

问题在于 SQL 语句而不是 HTML 标记

在您的准备语句中,您有 SELECT nomselec,prix 但在您的 while 语句中,您有 $donnees['nom'] 而不是 nomselec

这可能是问题吗?

对于所有说 int 不是有效类型的人来说,这并不重要,它仍然会正常发布;

例子:

<?php
if(isset($_POST))
{
    print_r($_POST);
}
?>
<form action="" method="post">
<p>
Nom
<input type="text" name="possesseur"/>
Prix maximum
<input type="int" name="prixmax"/>
<input type="submit" value="Valider"/>
</p>
</form>

回报:

Array ( [possesseur] => test [prixmax] => 123 )
于 2012-09-07T12:21:30.080 回答
0

使用 < input type="number"> HTML5 输入类型是

color
date
datetime
datetime-local
email
month
number
range
search
tel
time
url
week
于 2012-09-07T12:23:40.357 回答