Probleme php/mysal
Fermé
supergengi
-
26 nov. 2007 à 13:33
MaamuT Messages postés 174 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 20 décembre 2014 - 26 nov. 2007 à 15:34
MaamuT Messages postés 174 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 20 décembre 2014 - 26 nov. 2007 à 15:34
A voir également:
- Probleme php/mysal
- Easy php - Télécharger - Divers Web & Internet
- \R php ✓ - Forum PHP
- Br php ✓ - Forum PHP
- Expert php - Télécharger - Langages
- Php echo image ✓ - Forum PHP
2 réponses
MaamuT
Messages postés
174
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
20 décembre 2014
184
26 nov. 2007 à 13:59
26 nov. 2007 à 13:59
Alavache© :o
C'est quoi ce code ?
Plusieurs choses ne vont pas;
Pour commencer, tu doit avoir en ta possession l'IDENTIFIANT_DE_LA_RESSOURCE_DE_CONNEXION qui normalement est retourné lors de la connexion à la base:
$idConnexion = mysql_pconnect(SERVEUR, NOM, PASS);
Tu ne peut pas utiliser la variable $_POST[''] directement dans ta requête, il te faut l'extraire avant:
$postArea = $_POST['Area'];
$postType = $_POST['Type'];
$postBedrooms = $_POST['Bedrooms'];
Ensuite tu créé une variable pour ta requête SQL (essaye de toujours mettre les options de MySQL en MAJUSCULES et de toujours intégrer ta requête dans des guillemets double " ):
$sql = "SELECT * FROM properties WHERE Area = $postArea AND Type = $postType AND Bedrooms = $postBderooms AND Price BETWEEN $pricebefore AND $priceafter";
Normalement, si tu utilise des guillemets doubles ", tu n'a pas besoin d'échapper les variables, mais dans certains cas, il te faudra les entourer de simple quote '
Puis tu exécute ta requête:
$result = mysql_query($sql, $idConnexion);
Après ça, tu récupère avec un mysql_fetch_xxx et ça devrait rouler.
A suivre…
C'est quoi ce code ?
Plusieurs choses ne vont pas;
Pour commencer, tu doit avoir en ta possession l'IDENTIFIANT_DE_LA_RESSOURCE_DE_CONNEXION qui normalement est retourné lors de la connexion à la base:
$idConnexion = mysql_pconnect(SERVEUR, NOM, PASS);
Tu ne peut pas utiliser la variable $_POST[''] directement dans ta requête, il te faut l'extraire avant:
$postArea = $_POST['Area'];
$postType = $_POST['Type'];
$postBedrooms = $_POST['Bedrooms'];
Ensuite tu créé une variable pour ta requête SQL (essaye de toujours mettre les options de MySQL en MAJUSCULES et de toujours intégrer ta requête dans des guillemets double " ):
$sql = "SELECT * FROM properties WHERE Area = $postArea AND Type = $postType AND Bedrooms = $postBderooms AND Price BETWEEN $pricebefore AND $priceafter";
Normalement, si tu utilise des guillemets doubles ", tu n'a pas besoin d'échapper les variables, mais dans certains cas, il te faudra les entourer de simple quote '
Puis tu exécute ta requête:
$result = mysql_query($sql, $idConnexion);
Après ça, tu récupère avec un mysql_fetch_xxx et ça devrait rouler.
A suivre…
MaamuT
Messages postés
174
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
20 décembre 2014
184
26 nov. 2007 à 15:34
26 nov. 2007 à 15:34
Reprend ce que je disais dans mon précédent message et adapte ton script, notamment la construction de la requête elle même.
Fais un echo de la requête pour la vérifier.
Fais un echo de la requête pour la vérifier.
26 nov. 2007 à 14:49
merci por ta reponse.
en effet j'ai mis seulement la partie qui fesait probleme voici le code c'est une tentative pour faire un moteur de recherche
<?php
mysql_connect("localhost","root","");
mysql_select_db("test");
if (isset($_POST['Area']) AND isset($_POST['Type'])AND isset($_POST['Bedrooms'])AND isset($_POST['Price']))
{
$pricebefore=substr($_POST['Price'],0,strpos($_POST['Price'],"-"));
$pricebefore=str_replace("-","",$pricebefore);
$priceafter=strstr($_POST['Price'],"-");
$priceafter=str_replace("-","",$priceafter);
$result= mysql_query('select * from propreties where Area=\'' . $_POST['Area'] . ' \' and Type=\'' . $_POST['Type'] . ' \' and Bedrooms=\'' . $_POST['Bedrooms'] . ' \' and Price BETWEEN '$pricebefore ' AND '$priceafter ' ' );
$num_rows = mysql_num_rows($result);
}
while ($donnees = mysql_fetch_array($result))
{
?>
<H2><font color="orange"size="6" >
Search Results:
</font><div style="color:black; font-size:20">
<p><strong>Area: <?php echo $donnees['Area'];?></strong></br>
<strong>Type:<?php echo $donnees['Type'];?></strong></br>
<strong>Bedrooms:<?php echo $donnees['Bedrooms']; ?></strong></br>
<strong>Price:<?php echo $donnees ['Price']; ?></strong></br></p>
<?php
}
if ($num_rows=='0'){
echo " Sorry Nothing Matched";
}
mysql_close();
?>