在mysql查询中发布函数

时间:2012-09-07 12:17:13

标签: php mysql post

我尝试创建一个从公式到post函数的查询。 post函数必须传递text和int变量以创建发送到数据库的查询。

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

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

formulaire04.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 个答案:

答案 0 :(得分:2)

喔,

嗯,这只是基本的HTML

<input type="text">

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

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

接受的输入类型(HTML4)

  • 按钮
  • 复选框
  • file
  • 隐藏
  • image
  • 密码
  • 电台
  • 重置
  • 提交
  • 文本

接受的输入类型(HTML5)

  • 按钮
  • 复选框
  • color
  • 日期
  • datetime
  • datetime-local
  • 电子邮件
  • file
  • 隐藏
  • image
  • 号码
  • 密码
  • 电台
  • 范围
  • 重置
  • 搜索
  • 提交
  • tel
  • 文本
  • 时间
  • url

答案 1 :(得分:1)

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

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

答案 2 :(得分:1)

问题出在SQL语句中,而不是HTML标记

在您的准备声明中,您有SELECT nomselec,prix 但是在你的声明中你有$ 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 )

答案 3 :(得分:0)

使用&lt; input type="number">  HTML5输入类型

color
date
datetime
datetime-local
email
month
number
range
search
tel
time
url
week