Bunkertor 7 Posted April 6, 2009 Report Share Posted April 6, 2009 Sveiki! Es te mēģinu uzkodēt nu šausmīgi vienkāršu skritptu. Story ir tāds, ka ir pasākums (kaut kas līdzīgs izstādei) un biļešu numuri piedalās izlozē. Piemēram, es izvēlos no visas kaudzes 10 biļešu numurus, kas būs winneri un sarakstu viņus MySQL datubāzītē. Tagad, cilvēks nāk uz lapu, ievada savu biļetes numuru, lai pārbaudītu, vai viņš ir uzvarējis. Es te uzrakstīju kaut ko, kas man pašam šķita ļoti loģiski un saprotami, tomēr viss beidzas ar "bugger off" pat ja ievada uzvarējušu numuru :( Testēšanas nolūkos ievadam nepareizu numuru, rezultāts tāds pats... <?php error_reporting(E_ALL); $conn = mysql_connect("server", "user", "pword"); mysql_select_db("DB",$conn); $winner_input=$_POST['number']; //Shitas panjem veertiibu no HTML formas, ar to nekaadu probleemu nevareetu buut $SQL = "SELECT winners FROM ticket_win WHERE winners = '$winner_input' LIMIT 1"; $result = mysql_query($SQL); if (mysql_num_rows($result) > 0) //Ja cilveeks ir ievadiijis uzvareejushu numuru, tad rezultaataa viena rindinja tiks atlasiita { echo "congratulations!"; } else { echo "bugger off!"; } ?> Sēžu un blenžu uz to skriptu, bet kļūdu neredzu. Izlaidu caur utilitu, kas čeko sintaksi, viņa nekādas kļūdas neuzrāda. Varbūt kāds varētu palīdzēt! Paldies. Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 6, 2009 Report Share Posted April 6, 2009 pirms šīs rindiņas: $result = mysql_query($SQL); uzraksti: echo $SQL; un pašu rindiņu pārveido par: $result = mysql_query($SQL) or die(mysql_error()); Varbūt palīdz atrast problēmu. Quote Link to comment Share on other sites More sharing options...
Bunkertor 7 Posted April 6, 2009 Author Report Share Posted April 6, 2009 Paldies, it kā tagad redzu kļūdu, bet jēgas lielas nav. Pārbaudīju visas paroles un loginus, it kā viss ir pareizi un Mysql funkcionē (citas lapas darbojas) SELECT winners FROM ticket_win WHERE winners = '5469' LIMIT 1Access denied for user 'ODBC'@'localhost' (using password: NO) Quote Link to comment Share on other sites More sharing options...
v3rb0 Posted April 6, 2009 Report Share Posted April 6, 2009 raksti failā tos vinētajus - vesela viena rindiņa! <?php echo array_key_exists('nr', $_GET) ? in_array($_GET['nr'], file('winners.txt', FILE_IGNORE_NEW_LINES)) ? 'gz!' : 'fail' : 'ticket nr missing!'; Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 6, 2009 Report Share Posted April 6, 2009 Nu - tā teikt: "Этого не может быть, потому что этого не может быть!" :D Pēti, kas par vainu. Pamanīju, ka lieto dubultpēdiņas " - varbūt parolē (visticamāk) ir kāds specsimbols, kas jānoeskeipo.... Pamēģini teksta konstantēm lietotājvārdam un parolēm, izmantot "vienpēdiņas" ' Quote Link to comment Share on other sites More sharing options...
Klez Posted April 6, 2009 Report Share Posted April 6, 2009 (edited) ja tie ir 10 numuri tad ieliec masivā .... $m = array(1,2,3,n); if (in_array($m,$biletes_nr_ko_ievada)) echo 'Esi laimīgs'; else echo "sorry"; bet ja nu tomēr gribi likt ieksh mysql, tad uztaisi winners tabulu ar vienu lauku winner un tam laukam pieliec tipu unique un tad buus "SELECT winner FROM winners WHERE winner = 'mysql_real_escape($_POST['winner'])'"; //te vajag sintaksi salabot .. Edited April 6, 2009 by Klez Quote Link to comment Share on other sites More sharing options...
v3rb0 Posted April 6, 2009 Report Share Posted April 6, 2009 vai parādi sarakstu ar visiem laimīgajiem nr - tik html'a ul un li tagi! Quote Link to comment Share on other sites More sharing options...
Mr.Key Posted April 6, 2009 Report Share Posted April 6, 2009 (edited) Pamegini neizmantot mysql_num_rows, izmantot if (mysql_fetch_row(... )) Ko atgriez SQL, ja to ievada pa tieso MySQLā? Un kas tas par Access denied 1Access denied for user 'ODBC'@'localhost' (using password: NO) ?? Edited April 6, 2009 by Mr.Key Quote Link to comment Share on other sites More sharing options...
Bunkertor 7 Posted April 8, 2009 Author Report Share Posted April 8, 2009 ja tie ir 10 numuri tad ieliec masivā ....$m = array(1,2,3,n); if (in_array($m,$biletes_nr_ko_ievada)) echo 'Esi laimīgs'; else echo "sorry"; Wow, ģeniāla doma! Milzīgs paldies! (tikai skaidrības labad es pieminēšu, ka iekš in_array fu-jas $m nāk aiz variabļa...vnk otrāda secība) Nu - tā teikt: "Этого не может быть, потому что этого не может быть!" :D То-то! Была бы шляпа... vai parādi sarakstu ar visiem laimīgajiem nr - tik html'a ul un li tagi! Nea, te kur es dzīvoju pat bērni ir hakeri. Jo mazāk viņiem parāda, jo labāk! :) Un kas tas par Access denied 1Access denied for user 'ODBC'@'localhost' (using password: NO) ?? Vot es arī to gribētu saprast. Nav ne jausmas... Quote Link to comment Share on other sites More sharing options...
Mr.Key Posted April 8, 2009 Report Share Posted April 8, 2009 :)) esi drošs, ka lietotājs un parole pareizi norādīts? mysql_connect("server", ... vietā vajag mysql_connect("localhost", ... 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.