Probleme php/mysal
supergengi
-
MaamuT Messages postés 186 Statut Membre -
MaamuT Messages postés 186 Statut Membre -
Bonjour,
je debute en php/mysql et j'ai un probleme d'apostrophe ou quelque chose comme ca dans cette requete
$result= mysql_query('select * from propreties where Area=\'' . $_POST['Area'] . ' \' and Type=\'' . $_POST['Type'] . ' \' and
Bedrooms=\'' . $_POST['Bedrooms'] . ' \' and Price BETWEEN '$pricebefore' AND '$priceafter' ' );
je crois que le probleme est dans la partie price.
svp aider moi.
merci d'avance.
je debute en php/mysql et j'ai un probleme d'apostrophe ou quelque chose comme ca dans cette requete
$result= mysql_query('select * from propreties where Area=\'' . $_POST['Area'] . ' \' and Type=\'' . $_POST['Type'] . ' \' and
Bedrooms=\'' . $_POST['Bedrooms'] . ' \' and Price BETWEEN '$pricebefore' AND '$priceafter' ' );
je crois que le probleme est dans la partie price.
svp aider moi.
merci d'avance.
A voir également:
- Probleme php/mysal
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
2 réponses
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…
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();
?>