Jump to content
php.lv forumi

Pārbaudam vai numurs uzvarējis loterijā - un pļukts!


Bunkertor 7

Recommended Posts

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.

Link to comment
Share on other sites

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)

Link to comment
Share on other sites

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" '

Link to comment
Share on other sites

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 by Klez
Link to comment
Share on other sites

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 by Mr.Key
Link to comment
Share on other sites

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...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...