Jump to content
php.lv forumi

Recommended Posts

Posted

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.

Posted

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.

Posted

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)

Posted

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!';

Posted

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

Posted (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 by Klez
Posted (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 by Mr.Key
Posted
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...

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