stencilz Posted February 4, 2007 Report Share Posted February 4, 2007 ir skriptiņš kurš meklē datubāzē lietotāju pēc id vai litotajvārda: if(isset($_GET['s']) && !empty($_GET['s']) && isset($_GET['w']) && $_GET['w'] == "user") { $search = "%".$_GET['s']."%"; $result = mysql_query("SELECT * FROM users WHERE user_name LIKE '".$search."' || id LIKE '".$search."'"); if($result) { while ($res = mysql_fetch_array($result)) { echo 'User name: '.$res['user_name'].'</br> id: '.$res['id'].'</br> '; } } else { echo 'not found'; } } bet ievadot kaut ko tādu, kas neatbilst kritērijiem, neparāda not found, bet gan baltu lapu Link to comment Share on other sites More sharing options...
bubu Posted February 4, 2007 Report Share Posted February 4, 2007 if ($result) neizpildīsies tad un tikai tad, ja kverijs būs kļūdains (sintaktiski), bet nevis tad, kad atgriezīs tukšu resultsetu. RTFM taču! http://lv.php.net/mysql_query Un iemācies normāli identēt kodu!! Citādi murgs to lasīt. Link to comment Share on other sites More sharing options...
stencilz Posted February 4, 2007 Author Report Share Posted February 4, 2007 if(isset($_GET['s']) && !empty($_GET['s']) && isset($_GET['w']) && $_GET['w'] == "user") { $search = "%".$_GET['s']."%"; $result = mysql_query("SELECT * FROM users WHERE user_name LIKE '".$search."' || id LIKE '".$search."'"); $check = mysql_num_rows($result); if($check > 0) { while ($res = mysql_fetch_array($result)) { echo '<a href="user.php?id='.$res['id'].'">'.$res['user_name'].'</a></br>'; } } else { echo 'not found'; } } nav vajdzības iespringt :) Link to comment Share on other sites More sharing options...
bubu Posted February 4, 2007 Report Share Posted February 4, 2007 Džīzas.. Tu saproti, ko nozīmē identēt kodu? if(isset($_GET['s']) && !empty($_GET['s']) && isset($_GET['w']) && $_GET['w'] == "user") { $search = "%".$_GET['s']."%"; // ar šito te uzmanīgi. potenciāla hakošanas vieta. $result = mysql_query("SELECT * FROM users WHERE user_name LIKE '".$search."' || id LIKE '".$search."'"); $check = mysql_num_rows($result); if($check > 0) { while ($res = mysql_fetch_array($result)) { echo '<a href="user.php?id='.$res['id'].'">'.$res['user_name'].'</a></br>'; } } else { echo 'not found'; } } Nav daudz lasāmāk un uzskatāmāk kur katrs cikls/ifs sākas/beidzas? Link to comment Share on other sites More sharing options...
stencilz Posted February 4, 2007 Author Report Share Posted February 4, 2007 uzskatu, ka ja īss kods tad nav vajadzības to darīt Link to comment Share on other sites More sharing options...
bubu Posted February 4, 2007 Report Share Posted February 4, 2007 Slikti uzskati.. Jo, kā pats redzi, tu neesi vienīgais, kas lasa tavu kodu. Un ne jau mums speciāli jāgrib mocīties burtojot tavu kodu.. Bet tev vajag, lai mums būtu ērti un ātri saprast tavu kodu, ja jau vēlies helpu. Ja kodā vienā rindiņā ir nez-cik aizverošās/atverošās iekavas, tad kods nav labi lasāms, viegli saprotams, kā arī tajā ir viegli ielaist kļūdas. Kā nu tu pats vēlis... Katrā ziņā, ja postēsi normāli neidentētu kodu, tad uz labu atbildi no manis negaidi ;) Link to comment Share on other sites More sharing options...
Recommended Posts