|
| MYSQL-forespørgsel - burde den virke!? Fra : Julius T. Madsen |
Dato : 08-09-02 15:24 |
|
sorry...jeg ved godt at det her er mysql, men det er noget jeg
skal bruge sammen med PHP og da jeg ikke kan finde noget
SQL-forum så tænkte jeg at det her forum nok er det der er mest i
familie med!
men altså -> jeg har den her mysql-forespørgsel:
$suitetitel = mysql_query("SELECT nr FROM suites WHERE navn =
'$bruger'");
og det her php-kode til at vise den:
} else if ($suitetitel >= 500){
echo " <b>Titel: <b>Suite-ejer</B><BR>";
- men den viser ikke det som jeg vil have selvom "$suitetitel >=
500" why da? er der noget galt med min forespørgsel eller hvad er
det??
håber der er en der kan=)
Dulius
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Kim Schulz (08-09-2002)
| Kommentar Fra : Kim Schulz |
Dato : 08-09-02 15:31 |
|
On Sun, 8 Sep 2002 14:24:27 +0000 (UTC)
Julius T. Madsen <agf88@ofir.dk> wrote:
> sorry...jeg ved godt at det her er mysql, men det er noget jeg
> skal bruge sammen med PHP og da jeg ikke kan finde noget
> SQL-forum så tænkte jeg at det her forum nok er det der er mest i
> familie med!
>
> men altså -> jeg har den her mysql-forespørgsel:
>
> $suitetitel = mysql_query("SELECT nr FROM suites WHERE navn =
> '$bruger'");
>
herimellem skal du have en linje ala:
$row=mysql_fetch_row($suitetitle);
#altså omdanner returdata fra databasen til noget forståeligt. _row kan
#også være _array
og så går du fat i "nr" fra din query som:
$nr = $row["nr"]:
# altså du tager feltet nr ud af den række den du har fået fra databasen
> og det her php-kode til at vise den:
>
> } else if ($suitetitel >= 500){
> echo " <b>Titel: <b>Suite-ejer</B><BR>";
>
> - men den viser ikke det som jeg vil have selvom "$suitetitel >=
> 500" why da? er der noget galt med min forespørgsel eller hvad er
> det??
>
> håber der er en der kan=)
det er basal mysql/php så du skal nok læse lidt mere info om det.
--
Kim Schulz - Freelance Development | In Seattle, Washington, it is
Email : kim @ schulz.dk | illegal to carry a concealed
Tlf : 51904262 | weapon that is over six feet in
| |
Julius T. Madsen (08-09-2002)
| Kommentar Fra : Julius T. Madsen |
Dato : 08-09-02 15:37 |
|
> det er basal mysql/php så du skal nok læse lidt mere info om det.
heh - i know, men jeg læser altså ikke hurtigere end jeg gør - er ellers i
fuld gang med det!? så kan en ikke lige fortælle mig hvad der er galt? jeg
syns da det ser rigtigt ud =)
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Niels Andersen (08-09-2002)
| Kommentar Fra : Niels Andersen |
Dato : 08-09-02 16:15 |
|
Julius T. Madsen wrote in <alfn9h$4ks$1@sunsite.dk>:
>> det er basal mysql/php så du skal nok læse lidt mere info om det.
> heh - i know, men jeg læser altså ikke hurtigere end jeg gør - er ellers i
> fuld gang med det!? så kan en ikke lige fortælle mig hvad der er galt?
Det har Kim allerede fortalt. Læs hans indlæg igen. :)
I øvrigt kan jeg ikke lige se hvad læsehastighed har med sagen at gøre, men
never mind. :)
--
Mvh.
Niels Andersen
(la nels. anersyn.)
| |
Julius T. Madsen (08-09-2002)
| Kommentar Fra : Julius T. Madsen |
Dato : 08-09-02 16:36 |
|
hmm...jeg har fulgt Kims vejledning! (håber jeg da - ikke slå mig hvis jeg
tager fejl) men den siger:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result
resource
nu kan i ligeså godt få hele min if-dims i stedet for:
<?
$besse = mysql_query("SELECT admin FROM sw WHERE username = '$bruger'");
$geg = mysql_fetch_array($besse);
$suitetitel = mysql_query("SELECT nr FROM suites WHERE navn = '$bruger'");
$row=mysql_fetch_row($suitetitel);
$nr = $row["nr"];
if ($geg[admin] == 0){
echo " <b>Titel: <b>Normal</B><BR>";
} else if ($geg[admin] == 25){
echo " <b>Titel: <b>Hjælper</B><BR>";
} else if ($geg[admin] == 99){
echo " <b>Titel: <b>Top-admin</B><BR>";
}
if ($nr >= 500){
echo " <b>Titel: <b>Suite-ejer</B><BR>";
}
?>
Sorry hvis jeg er lidt dum, men er ret ny indenfor PHP/MYSQL =) så i må
bære over med mig!
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Finn Nielsen (08-09-2002)
| Kommentar Fra : Finn Nielsen |
Dato : 08-09-02 15:49 |
|
Julius T. Madsen <agf88@ofir.dk> writes:
> og det her php-kode til at vise den:
>
> } else if ($suitetitel >= 500){
> echo " <b>Titel: <b>Suite-ejer</B><BR>";
Du er godt klar over at en "else if" kun udføres hvis udtrykket i den
foregående "if" er falsk..
--
Finn Nielsen - http://www.zznyyd.dk/
"Creatures seemed to turn up in the world randomly, and certainly not
according to any pictures in a book." - The science of Discworld
| |
Julius T. Madsen (08-09-2002)
| Kommentar Fra : Julius T. Madsen |
Dato : 08-09-02 16:16 |
|
> Du er godt klar over at en "else if" kun udføres hvis udtrykket i den
> foregående "if" er falsk..
ja - det ved jeg, men hvis jeg fjerne alle andre if-sætninger så den
står alene, så reagerer den stadig ikke på det!?
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Julius T. Madsen (08-09-2002)
| Kommentar Fra : Julius T. Madsen |
Dato : 08-09-02 16:47 |
|
hmm...der skete en fejl så den postede mig indlæg inde midt i debatten!?
sorry for spam, men nu poster jeg altså igen...:
hmm...jeg har fulgt Kims vejledning! (håber jeg da - ikke slå mig hvis jeg
tager fejl) men den siger:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result
resource
nu kan i ligeså godt få hele min if-dims i stedet for:
<?
$besse = mysql_query("SELECT admin FROM sw WHERE username = '$bruger'");
$geg = mysql_fetch_array($besse);
$suitetitel = mysql_query("SELECT nr FROM suites WHERE navn = '$bruger'");
$row=mysql_fetch_row($suitetitel);
$nr = $row["nr"];
if ($geg[admin] == 0){
echo " <b>Titel: <b>Normal</B><BR>";
} else if ($geg[admin] == 25){
echo " <b>Titel: <b>Hjælper</B><BR>";
} else if ($geg[admin] == 99){
echo " <b>Titel: <b>Top-admin</B><BR>";
}
if ($nr >= 500){
echo " <b>Titel: <b>Suite-ejer</B><BR>";
}
?>
det var det...
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Niels Andersen (08-09-2002)
| Kommentar Fra : Niels Andersen |
Dato : 08-09-02 17:24 |
|
Julius T. Madsen wrote in <alfrco$18a$1@sunsite.dk>:
> Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result
> resource
[...]
> $besse = mysql_query("SELECT admin FROM sw WHERE username = '$bruger'");
> $geg = mysql_fetch_array($besse);
> $suitetitel = mysql_query("SELECT nr FROM suites WHERE navn = '$bruger'");
> $row=mysql_fetch_row($suitetitel);
Du får ikke tjekket om der er fejl i din query el. lign. Prøv at udvide din
mysql_query med en "or die()":
$result = mysql_query($sql) or die("SQL fejl: ".mysql.error());
Fx:
$sql = "SELECT admin FROM sw WHERE username = '$bruger'";
$besse = mysql_query($sql) or die("SQL fejl: ".mysql.error());
(Jeg har også lige flyttet selve SQL'en lidt væk, så er det lidt mere
overskueligt.)
--
Mvh.
Niels Andersen
(la nels. anersyn.)
| |
Julius T. Madsen (08-09-2002)
| Kommentar Fra : Julius T. Madsen |
Dato : 08-09-02 17:43 |
|
> Du får ikke tjekket om der er fejl i din query el. lign. Prøv at udvide din
> mysql_query med en "or die()":
nop, der er vist ikke fejl i min query - den siger stadig:
"Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result
resource"
men måske har jeg ikke sat or die() tingen rigtigt ind:
<?
$sql = "SELECT admin FROM sw WHERE username = '$bruger'";
$besse = mysql_query($sql) or die("SQL fejl: ".mysql.error());
$geg = mysql_fetch_array($besse);
$suitetitel = mysql_query("SELECT nr FROM suites WHERE navn = '$bruger'");
$row=mysql_fetch_row($suitetitle);
$nr = $row["nr"];
if ($geg[admin] == 0){
echo " <b>Titel: <b>Normal</B><BR>";
} else if ($geg[admin] == 25){
echo " <b>Titel: <b>Hjælper</B><BR>";
} else if ($geg[admin] == 99){
echo " <b>Titel: <b>Top-admin</B><BR>";
}
if ($nr >= 500){
echo " <b>Titel: <b>Suite-ejer</B><BR>";
}
?>
er hvad jeg har gjort!?
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Peter Brodersen (08-09-2002)
| Kommentar Fra : Peter Brodersen |
Dato : 08-09-02 18:04 |
|
On Sun, 8 Sep 2002 16:42:49 +0000 (UTC), Julius T. Madsen
<agf88@ofir.dk> wrote:
>$suitetitel = mysql_query("SELECT nr FROM suites WHERE navn = '$bruger'");
>$row=mysql_fetch_row($suitetitle);
Det er mysql_fetch_row(), der fejler. Derfor skal din query-linje også
her rettes til, fx:
$suitetitel = mysql_query("SELECT nr FROM suites WHERE navn =
'$bruger'") or die("SQL fejl: ".mysql.error());
Du kan evt. lave din query på forhånd, fx:
$query = "SELECT nr FROM suites WHERE navn = '$bruger'";
$suitetitel = mysql_query($query) or die("SQL fejl for query $query :
".mysql.error());
--
- Peter Brodersen
| |
Niels Andersen (08-09-2002)
| Kommentar Fra : Niels Andersen |
Dato : 08-09-02 18:45 |
|
Julius T. Madsen wrote in <alfum9$nj0$1@sunsite.dk>:
> men måske har jeg ikke sat or die() tingen rigtigt ind:
> $suitetitel = mysql_query("SELECT nr FROM suites WHERE navn = '$bruger'");
Du skal lige sætte den på *alle* dine mysql_queries. :)
--
Mvh.
Niels Andersen
(la nels. anersyn.)
| |
Jakob Møbjerg Nielse~ (09-09-2002)
| Kommentar Fra : Jakob Møbjerg Nielse~ |
Dato : 09-09-02 10:25 |
|
Julius T. Madsen wrote:
> $row=mysql_fetch_row($suitetitle);
> $nr = $row["nr"];
Det her duer ikke. mysql_fetch_row() returnerer kun et numereret array,
dvs. du kan ikke skrive '$nr = $row["nr"]', men kun '$nr = $row[0]'.
Hvis du vil bruge '$nr = $row["nr"]', skal du bruge en funktion der
returnerer at associativt array (det der står inde i $row[] er en nøgle
eller en key, der associereres med selve værdien, deraf navnet
"associativt array").
Disse funktioner kan være:
1. mysql_fetch_assoc(), der returnerer et associativt array.
2. mysql_fetch_array(), der returnerer et numerisk array, et associativt
array eller begge (se
http://www.php.net/manual/en/function.mysql-fetch-array.php).
--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
http://www.jakobnielsen.dk/ | -- Terry Pratchett, Reaper Man
Jeg søger et fuldtidsjob som programmør. Tag et kig på hjemmesiden.
| |
Kim Schulz (08-09-2002)
| Kommentar Fra : Kim Schulz |
Dato : 08-09-02 18:19 |
|
[snip]
> $suitetitel = mysql_query("SELECT nr FROM suites WHERE navn =
> '$bruger'");$row=mysql_fetch_row($suitetitle);
[snip]
>
> er hvad jeg har gjort!?
ja men du har glemt at kigge efter stavefejl. $suittitel og $suittitle
er ikke det samme.
--
Kim Schulz - Freelance Development | micro: Thinker toys.
Email : kim @ schulz.dk |
Tlf : 51904262 |
| |
|
|