christo Posted May 3, 2006 Share Posted May 3, 2006 Once again i'm passing values from html to php but the request is not working and gives [!--quoteo--][div class=\'quotetop\']QUOTE[/div][div class=\'quotemain\'][!--quotec--]Problem with query: SELECT * FROM object WHERE city = Montpellier AND transaction = Location AND accomodation = Maison AND nb_rooms = 6 AND price = 1650000 AND age_par = AgenceUnknown column 'Montpellier' in 'where clause'[/quote] i'm passing the values with [code]$city = $HTTP_POST_VARS['city'];$transaction = $HTTP_POST_VARS['transaction'];$accomodation = $HTTP_POST_VARS['accomodation'];$nb_rooms = $HTTP_POST_VARS['nb_rooms'];$age_par = $HTTP_POST_VARS['age_par'];$price = $HTTP_POST_VARS['price'];[/code] at the top of the script and my request is [code]$host = "???";$user = "???";$pass = "???";$base = "???";$db_conx = mysql_connect($host,$user,$pass) or print("error connection MySQL !");mysql_select_db($base, $db_conx) or print("Error connection DB !");$query = "SELECT * FROM object WHERE city = $city AND transaction = $transactionAND accomodation = $accomodation AND nb_rooms = $nb_rooms AND price = $price ANDage_par = $age_par";$rs = mysql_query($query) or die('Problem with query: '.$query.'<br><br>'.mysql_error());[/code]I need to check if the values i'm passing exist in the DB and if yes show results, but i wonder if linking all the vals with AND is the correct way to go... ? Quote Link to comment Share on other sites More sharing options...
Orio Posted May 3, 2006 Share Posted May 3, 2006 When using the "WHERE" you got to use single quotes- [!--sql--][div class=\'sqltop\']SQL[/div][div class=\'sqlmain\'][!--sql1--][span style=\'color:blue;font-weight:bold\']SELECT[/span] * [color=green]FROM[/color] [color=orange]sometable[/color] [color=green]WHERE[/color] column1[color=orange]=[/color][color=red]'123'[/color] [!--sql2--][/div][!--sql3--]Notice the single quotes around the "123".This also applys about variables, (IE "WHERE coulmn1='$city' ").Irui. Quote Link to comment Share on other sites More sharing options...
christo Posted May 3, 2006 Author Share Posted May 3, 2006 That's it ;-)When i try to display the data from the DB i get an endles While loop with an error...[!--quoteo--][div class=\'quotetop\']QUOTE[/div][div class=\'quotemain\'][!--quotec--]Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\foreign\easyphp1-8\www\agence\test\search.php on line 31[/quote][code]$query = "SELECT * FROM object WHERE city = '$city' AND transaction = '$transaction'AND accomodation = '$accomodation' AND nb_rooms = '$nb_rooms' AND price = '$price' ANDage_par = '$age_par'";$rs = mysql_query($query) or die('Probleme avec la requette :'.$query.'<br><br>'.mysql_error());while(($data=mysql_fetch_array($query))!==false) { //I get the Warning here echo "<tr> <td>".$data['city']."</td> <td>".$data['transaction']."</td> <td>".$data['accomodation']."</td> <td>".$data['nb_rooms']."</td> <td>".$data['price']."</td> <td>".$data['age_par']."</td> </tr>";} [/code]Any ideas??? Quote Link to comment Share on other sites More sharing options...
.josh Posted May 3, 2006 Share Posted May 3, 2006 change this:while(($data=mysql_fetch_array($query))!==false) { to this:while ($data=mysql_fetch_array($rs)) { Quote Link to comment Share on other sites More sharing options...
christo Posted May 3, 2006 Author Share Posted May 3, 2006 I didn't think that would wok !!!1000 Thanks :-)christos Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.