lille problem med php og mysql

Tags:    php

Jeg har lavet en bingo tal generator i php og mysql, og den virker næsten, mit eneste problem er at den nogen gange smider de samme tal ud selvom jeg har en fin funktion der skulle bekæmpe dette fænomen.

Her er funktionen:

$number = $_POST['number'];
$number = (int) $number;

if ($number == 0) {
$number = mt_rand(1, 90);
}
$tjek = mysql_query("SELECT * FROM bingo WHERE number = $number");
$pent = mysql_num_rows($tjek);
$tjak = mysql_query("SELECT * FROM bingo2 WHERE number = $number");
$peng = mysql_num_rows($tjak);
$tjuk = mysql_query("SELECT * FROM bingo3 WHERE number = $number");
$pong = mysql_num_rows($tjuk);
$tjik = mysql_query("SELECT * FROM bingo4 WHERE number = $number");
$pyng = mysql_num_rows($tjik);

while ($pent > 0 | $peng > 0 | $pong > 0 | $pyng > 0) {
$number = mt_rand(1, 90);
$tjek = mysql_query("SELECT * FROM bingo WHERE number = $number");
$pent = mysql_num_rows($tjek);
$tjak = mysql_query("SELECT * FROM bingo2 WHERE number = $number");
$peng = mysql_num_rows($tjak);
$tjuk = mysql_query("SELECT * FROM bingo3 WHERE number = $number");
$pong = mysql_num_rows($tjuk);
$tjik = mysql_query("SELECT * FROM bingo4 WHERE number = $number");
$pyng = mysql_num_rows($tjik);
if ($number > 90) {
$number = mt_rand(1, 90);
}
if ($number == 0) {
$number = mt_rand(1, 90);
}
}

Jeg har selvfølgelig en database med de fire tabeller bingo-2-3-4 og den indsætter også tallene fint nok, jeg ved bare ikke hvad problemet er med min while funktion...




5 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
while ($pent > 0 | $peng > 0 | $pong > 0 | $pyng > 0) {

Jeg har godt nok aldrig hørt om, at en while-sætning også kan se sådan ud :)
Prøv:
while (($pent > 0) || ($peng > 0) || ($pong > 0) || ($pyng > 0)) {



while ($pent > 0 | $peng > 0 | $pong > 0 | $pyng > 0) {

Jeg har godt nok aldrig hørt om, at en while-sætning også kan se sådan ud :)
Prøv:
while (($pent > 0) || ($peng > 0) || ($pong > 0) || ($pyng > 0)) {


Nå, det var vist mig der lavede fisk i syntaxen, måske skulle jeg prøve at bruge min fine php manual :)

Takker for den hurtige respons



Kan lige indskyde at der, udover min syntax fejl også var det galt at jeg havde afsluttet loop'et med et }. Det skulle have været et "endwhile;"




Kan lige indskyde at der, udover min syntax fejl også var det galt at jeg havde afsluttet loop'et med et }. Det skulle have været et "endwhile;"


hmm.. nej da.. det er rigtigt nok! Man kan aflsutte en løkke med } hvis der altså er { når løkken starter!
Hilsen Chadi
Mit lykketal er 2959



hmm.. nej da.. det er rigtigt nok! Man kan aflsutte en løkke med } hvis der altså er { når løkken starter!
Hilsen Chadi
Mit lykketal er 2959


He he, ja, det fandt jeg også ud af, jeg havde glemt at lade Dreamweaver gemme direkte på webserveren så det var derfor der ikke kom nogen reaktion på min kode ændring.

doh :)



t