08. maj 2001 - 15:47
Der er
12 kommentarer og 2 løsninger
hmm kan ik loge overskuge det længere ;((
hejsa all jeg har her en søge formular hvor brugerne skal kunne indtaste nogle data og der skal derefter komme resultalet ud, meen jeg gik lige kold, er der en der gidder lave selve søgefunktionen til denne formular ?? <div align=\"center\"><table border=\"0\" cellpadding=\"3\" cellspacing=\"3\" width=\"60%\"> <tr> <td width=\"110%\"><form method=\"post\" action=\"soeg.php\" align=\"center\"> <p> <br> <div align=\"center\"><table border=\"0\" cellpadding=\"4\" width=\"100%\"> <tr> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b><br> Det jeg søger er: </b></font></td> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b><select name=\"kon\"> <option selected value=\"mand\">Mand</option> <option value=\"kvinde\">Kvinde</option> <option value=\"par\">Par</option></select> </b></font></td> </tr> <tr> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b>Personen skal være mellem</b></font></td> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b><input type=\"text\" name=\"alder1\" size=\"2\"> år og <input type=\"text\" name=\"alder2\" size=\"2\"> år </b></font></td> </tr> <tr> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b>Personen skal være mellem</b></font></td> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b><input type=\"text\" name=\"hojde\" size=\"2\"> cm og <input type=\"text\" name=\"hojde2\" size=\"2\"> cm høj </b></font></td> </tr> <tr> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b>Personen skal være</b></font></td> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b><select name=\"a_sexorientering\"> <option selected value=\"alle\">Alle</option> <option value=\"Heterosexuel\">Heterosexuel</option> <option value=\"Homosexuel\">Homosexuel</option> <option value=\"Bisexuel\">Bisexuel</option> <option value=\"Transsexuel\">Transsexuel</option></select> </b></font></td> </tr> <tr> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b>Personen skal have bopæl i</b></font></td> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b><select name=\"a_landsdel\"> <option selected value=\"København\">København</option> <option value=\"Storkøbenhavn\">Storkøbenhavn</option> <option value=\"Nordsjælland\">Nordsjælland</option> <option value=\"Sydsjælland\">Sydsjælland</option> <option value=\"Øvrige Sjælland\">Øvrige Sjælland</option> <option value=\"Lolland/Falster\">Lolland/Falster</option> <option value=\"Hele Sjælland\">Hele Sjælland</option> <option value=\"Fyn\">Fyn</option> <option value=\"Nordjylland\">Nordjylland</option> <option value=\"Sydjylland\">Sydjylland</option> <option value=\"Midtjylland\">Midtjylland</option> <option value=\"Østjylland\">Østjylland</option> <option value=\"Vestjylland\">Vestjylland</option> <option value=\"Hele Jylland\">Hele Jylland</option> <option value=\"Alle\">Alle</option></select> </b></font></td> </tr> <tr> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b>Personens sexinteresse</b></font></td> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b><select name=\"a_sexinteresse\"> <option selected value=\"Alle\">Alle</option> <option value=\"Alle former for sex\">Alle former for sex</option> <option value=\"Almindelig sex\">Almindelig sex</option> <option value=\"Analsex\">Analsex</option> <option value=\"Film/video optagelser\">Film/video optagelser</option> <option value=\"Lak/læder\">Lak/læder</option> <option value=\"Gruppesex\">Gruppesex</option></select> </b></font></td> </tr> <tr> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b>Hvor mange profiler ønskes vist ?</b></font></td> <td width=\"50%\"><p><font face=\"Verdana\" size=\"1\" color=\"black\"><b><select name=\"antal\"> <option selected value=\"1\">10 Profiler</option> <option value=\"2\">20 Profiler</option> <option value=\"4\">40 Profiler</option></select> pr. side .</b></font></td> </tr> </table></div></td> </tr> <tr> <td width=\"100%\" align=\"right\"><p align=\"center\"><font face=\"Verdana\" size=\"1\" color=\"black\"><b><input type=\"submit\" name=\"B1\" value=\"Søg nu\"> </b></font></td> </tr> </table></div> </form> 100 points til den vendlige :)) indate.
Annonceindlæg fra Computerworld it-jobbank
Hmm... YADSS (Yet Another Dating/Sex Site) Jeg formoder at du har en eller anden database, som du ønsker at søge i. Det er nødvendigt at se den, inden jeg kan svare.
hmm hvis du bare bruger select name variablen i mysql skal jeg nok selv rette det til indate
??? Det kan jeg da ikke. Jeg skal da vide, om de forskellige kriterier (køn, landsdel, etc.) er gemt som strenge, tal eller fremmednøgler til andre tabeller.
Der er jo væsentlig forskel på at skrive SELECT * FROM person WHERE koen = \'mand\' eller SELECT * FROM person WHERE koen = 1 hvis du nu har defineret 1 = mand, 2 = kvinde etc.
hvis du nu ser på select name\'erne er der ingen der er i tal og netop derfor sagde jeg at du kunne bruge dem da de næsten er ens med dem i min database og jeg retter selv det hele til indate altså ingen tal :))
Ok, frit fra leveren soeg.php -------------- <?php $sql = \"select * from person \"; $sql .= \"where kon = \'${HTTP_POST_VARS[\"kon\"]}\' \"; $sql .= \"and alder >= ${HTTP_POST_VARS[\"alder1\"]} \"; $sql .= \"and alder <= ${HTTP_POST_VARS[\"alder2\"]} \"; $sql .= \"and hojde >= ${HTTP_POST_VARS[\"hojde\"]} \"; $sql .= \"and hojde <= ${HTTP_POST_VARS[\"hojde2\"]} \"; if ($HTTP_POST_VARS[\"a_sexorientering\"] != \"alle\") $sql .= \"and a_sexorientering = \'${HTTP_POST_VARS[\"a_sexorientering\"]}\' \"; if ($HTTP_POST_VARS[\"a_landsdel\"] != \"alle\") $sql .= \"and a_landsdel= \'${HTTP_POST_VARS[\"a_landsdel\"]}\' \"; if ($HTTP_POST_VARS[\"a_sexinteresse\"] != \"alle\") $sql .= \"and a_sexinteresse = \'${HTTP_POST_VARS[\"a_sexinteresse\"]}\' \"; $antal = $HTTP_POST_VARS[\"antal\"] * 10; $sql .= \"limit $antal \"; $con = mysql_connect($host, $username, $password); $res = mysql_db_query($dbname, $sql) or die(mysql_error()); while ($row = mysql_fetch_array($res)) { echo $row[\"navn\"]; etc... } mysql_free_result($res); ?>
hmm nu skriver du sådan her if ($HTTP_POST_VARS[\"a_sexorientering\"] != \"alle\") $sql .= \"and a_sexorientering = \'${HTTP_POST_VARS[\"a_sexorientering\"]}\' \"; hvad så hvis det ik er sat på \"alle\" ???
Hvis den er sat på \"alle\", er det lige meget hvad db-feltet indeholder, og dermed skal SQL-stumpen IKKE tilføjes. Hvis derimod at select\'en ikke er sat til \"alle\", så skal kun records, hvor feltet er lig med det valgte, udtrækkes, og dermed tilføjes SQL-stumpen.
hmm får hele tiden denne fejl, lige meget hvad jeg skriver ;(( query was empty her har du den som den står nu <?php require(\"configuration.php\"); $con = mysql_connect(localhost, $dbuser, $dbpass); $res = mysql_db_query($database, $sql) or die(mysql_error()); while ($row = mysql_fetch_array($res)) { $sql = \"select * from chat_user\"; $sql .= \"where user_kon = ${HTTP_POST_VARS[\"kon\"]} \"; $sql .= \"and user_alder >= ${HTTP_POST_VARS[\"alder1\"]} \"; $sql .= \"and user_alder <= ${HTTP_POST_VARS[\"alder2\"]} \"; $sql .= \"and user_hojde >= ${HTTP_POST_VARS[\"hojde\"]} \"; $sql .= \"and user_hojde <= ${HTTP_POST_VARS[\"hojde2\"]} \"; if ($HTTP_POST_VARS[\"sexorien\"] != \"alle\") $sql .= \"and user_sexorien = \'${HTTP_POST_VARS[\"sexorien\"]}\' \"; if ($HTTP_POST_VARS[\"landsdel\"] != \"alle\") $sql .= \"and user_landsdel= \'${HTTP_POST_VARS[\"landsdel\"]}\' \"; if ($HTTP_POST_VARS[\"sexint\"] != \"alle\") $sql .= \"and user_sexint = \'${HTTP_POST_VARS[\"sexint\"]}\' \"; $antal = $HTTP_POST_VARS[\"antal\"] * 10; $sql .= \"limit $antal \"; mysql_free_result($res); } ?>
Ja det kan jeg godt forstå du gør. :-) Du skal generere SQL-sætningen INDEN du bruger den: <?php require(\"configuration.php\"); $con = mysql_connect(localhost, $dbuser, $dbpass); $sql = \"select * from chat_user\"; $sql .= \"where user_kon = ${HTTP_POST_VARS[\"kon\"]} \"; $sql .= \"and user_alder >= ${HTTP_POST_VARS[\"alder1\"]} \"; $sql .= \"and user_alder <= ${HTTP_POST_VARS[\"alder2\"]} \"; $sql .= \"and user_hojde >= ${HTTP_POST_VARS[\"hojde\"]} \"; $sql .= \"and user_hojde <= ${HTTP_POST_VARS[\"hojde2\"]} \"; if ($HTTP_POST_VARS[\"sexorien\"] != \"alle\") $sql .= \"and user_sexorien = \'${HTTP_POST_VARS[\"sexorien\"]}\' \"; if ($HTTP_POST_VARS[\"landsdel\"] != \"alle\") $sql .= \"and user_landsdel= \'${HTTP_POST_VARS[\"landsdel\"]}\' \"; if ($HTTP_POST_VARS[\"sexint\"] != \"alle\") $sql .= \"and user_sexint = \'${HTTP_POST_VARS[\"sexint\"]}\' \"; $antal = $HTTP_POST_VARS[\"antal\"] * 10; $sql .= \"limit $antal \"; $res = mysql_db_query($database, $sql) or die(mysql_error()); while ($row = mysql_fetch_array($res)) { // Her udskriver du dine resultater, f.eks: echo $row[\"name\"] . \"<br>\"; echo $row[\"kon\"] . \"<br>\"; echo $row[\"alder\"] . \"<br>\"; } mysql_free_result($res); ?>
hmm You have an error in your SQL syntax near \'= Mand and user_alder >= 21 and user_alder <= 100 and user_hojde >= 160 and user\' at line 1 ???
:-) $sql .= \"where user_kon = ${HTTP_POST_VARS[\"kon\"]} \"; Der mangler apostroffer \' rundt om variablen $sql .= \"where user_kon = \'${HTTP_POST_VARS[\"kon\"]}\' \";
nope det var ik fejlen, den er der stadi You have an error in your SQL syntax near \'= \'Mand\' and user_alder >= 21 and user_alder <= 100 and user_hojde >= 160 and user\' at line 1
hmm snupper selv de 30 point, dem måtte jeg ofre i et andet spm for at få skidtet til at funke (sorry)