Problème de sélection dans un table

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème de sélection dans un table

Re: Problème de sélection dans un table

par sirakawa » 01 avr. 2014, 08:47

Voici quelques raisons de dire que le code est merdique:
On espère qu'il y a bien
<html>
<head>
</head>
<body>

"<div id="form"><!-- à quoi sert l'id ? de plus donner comme id un marqueur de html !!!-->
 <h2>Pour les petits budget...</h2>
 <p>Tapez ci-dessous votre budget :</p>
 <form method="POST" action="budget_art.php>
 Budget :&nbsp<input type="text" name="primax">€<br/><br/> <!-- input est mal codé : : <input type="text" name="primax"  /> -->
 <input type="submit" name="ok" value="Valider"><br/><!-- à quoi sert ce <br/> ? qui est mal codé : <br /> --> <!-- input est mal codé : : <input type="submit" name="ok"  value = "Valider" /> -->
 </form>"
<!--Où est le </div> ?-->
<!-- où est </body> </html> ?-->

Re: Problème de sélection dans un table

par Ezixel » 01 avr. 2014, 08:10

Bonjour, désolé pour cette réponse tardive,
le code html est donné par le professeur et je ne vois pas en quoi il est pourrie,
pour l'erreur call to a member function fetch_objetct() on a non-object, j'ai eut juste supprimer les espaces dans le code et renommer mes variables.
Merci en tout cas pour vos réponses =)

Re: Problème de sélection dans un table

par niuxe » 24 mars 2014, 20:41

Salut,

Désolé si je vais être dur mais c'est pour ton bien. C'est quoi ce code html pourrie ?

Call to a member function fetch_object() on a non-object ;)

Après, as tu essayé ta requête en dur dans la base ?
Est ce que tu contrôles les données venant du formulaire ?

De toute évidence, tu brûles des étapes.

Re: Problème de sélection dans un table

par sirakawa » 24 mars 2014, 20:32

Bsr,

$db=new mysqli(localhost,id,mdp,basededonnée);
$req="SELECT * FROM dutaf_article WHERE prix_art<=$_POST.['primax']. INNER JOIN dutaf_fournisseur
ON dutaf_article.num_four = dutaf_fournisseur.num_four";
//ajout
print "<br>$req<br>"; //et teste avec phpmyadmin ou equiv
$tous=$db->query($req);
//si la requete fonctionne correctement
$nb_result = $tous->num_rows; // et exploite $nb_result
echo "<table border='1'>";
while ($unarticle=$tous->fetch_object()){

Problème de sélection dans un table

par Ezixel » 24 mars 2014, 19:45

Bonjour,
étant étudiant je dois faire un site fictif de vente en ligne. Mon problème est le suivant :
Il faut faire une page "Petit Budget" pour permettre à l'utilisateur de rentrer son budget , voici le code du formlaire :
"<div id="form">
<h2>Pour les petits budget...</h2>
<p>Tapez ci-dessous votre budget :</p>
<form method="POST" action="budget_art.php>
Budget :&nbsp<input type="text" name="primax">€<br/><br/>
<input type="submit" name="ok" value="Valider"><br/>
</form>"

Dans ce formulaire, je fais appelle à un fichier php et l'utilisateur rendre une donnée dans la variable primax,
le problème est dans le fichier php qui est le suivant :
"<?php
$db=new mysqli(localhost,id,mdp,basededonnée);
$req="SELECT *
FROM dutaf_article
WHERE prix_art<=$_POST.['primax'].
INNER JOIN dutaf_fournisseur
ON dutaf_article.num_four = dutaf_fournisseur.num_four";
$tous=$db->query($req);
echo "<table border='1'>";
while ($unarticle=$tous->fetch_object()){
echo"<tr>";
echo"<td>";
echo $unarticle->num_art.'<br/>';
echo "</td>";

echo"<td>";
echo $unarticle->desig_art.'<br/>';
echo "</td>";

echo"<td>";
echo $unarticle->desc_art.'<br/>';
echo "</td>";

echo"<td>";
echo $unarticle->prix_art.'<br/>';
echo "</td>";

echo"<td>";
echo $unarticle->qte_art.'<br/>';
echo "</td>";

echo"<td>";
echo $unarticle->nom_four.'<br/>';
echo "</td>";

echo "</tr>";
}
echo "</table>";"

Lorsque je tape un nombre dans le formulaire, le fichier php m'indique une erreur (Call to a member function fetch_object() on a non-object ) , si j'ai bien compris la raison de cette erreur , cela veut dire que dans ma requête il y a une variable non-définie, j'ai chercher sur le web une solution mais sans résultat, je sais juste que le problème vient de la condition WHERE et de la méthode POST, j'aurai besoin d'être éclaircis sur ce point. Merci d'avance pour vos réponses.