/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
while ($row = mysql_fetch_array(mysql_quer~
Fra : none


Dato : 28-10-05 20:48

Jeg har et lille problem med at
while ($row = mysql_fetch_array(mysql_query("select * from articles
ORDER BY LPAD(rank,10,0) DESC"))) {
$rank = $row["rank"];
$titel = $row["titel"];
$indhold = $row["indhold"];
$side_id = $row["sideid"];
// Vi renser indhold tags
$return_chars = "200";
$indhold = preg_replace('#(<)([\/]?.*?)(>)#is', '&lt;\\2&gt;',
$indhold);
$indhold = ( strlen($indhold) > $return_chars ) ?
substr($indhold, 0, $return_chars) . ' ...' : $indhold;

?>

noget indhold...
<?php
echo $rank;
echo $titel;
echo $indhold;
echo $side_id;

}

Simpelthen bare gentager den samme linje, igen og igen og igen og igen..
(uendelighed)...
Databasen er skabt ved:
Create Table articles (sideid MEDIUMINT NOT NULL AUTO_INCREMENT, titel
VARCHAR(14), indhold LONGTEXT, rank VARCHAR(2), PRIMARY KEY (sideid));


Hvad skulle der være i vejen her?

 
 
Per Thomsen (28-10-2005)
Kommentar
Fra : Per Thomsen


Dato : 28-10-05 22:26

none wrote:
> Jeg har et lille problem med at
> while ($row = mysql_fetch_array(mysql_query("select * from articles
> ORDER BY LPAD(rank,10,0) DESC"))) {
[klip]
>
> Simpelthen bare gentager den samme linje, igen og igen og igen og igen..
> (uendelighed)...
[klip]
>
> Hvad skulle der være i vejen her?

mysql_query returnerer et resource link til et database result, det er
dettte resource link, som du skal give som parameter til
mysql_fetch_array - den del har du vist forstået, men...

mysql_query returnerer et resource link, _hver gang_ du kalder den.
Det du gør er altså at sende den samme query til databasen, igen og
igen. Hver gang du sender dette query, for du self. et resource link
tilbage, der peger på resultatet af din query.

Det du opnår ved mysql_fetch_array(mysql_query(...)) kaldet, er altså at
du hele tiden nulstiller dit resultat.

Prøv i stedet at gemme resource link'et i en variabel, og giv denne som
parameter til mysql_fetch_array():

$dbRes = mysql_query("select * from articles ORDER BY LPAD(rank,10,0)
DESC");
while ( mysql_fetch_array($dbRes) ) {
...
}

MVH Per Thomsen,
<http://www.pert.dk>

none (29-10-2005)
Kommentar
Fra : none


Dato : 29-10-05 12:06

Per Thomsen wrote:
> none wrote:
>
>> Jeg har et lille problem med at
>> while ($row = mysql_fetch_array(mysql_query("select * from articles
>> ORDER BY LPAD(rank,10,0) DESC"))) {
>
> [klip]
>
>>
>> Simpelthen bare gentager den samme linje, igen og igen og igen og
>> igen.. (uendelighed)...
>
> [klip]
>
>>
>> Hvad skulle der være i vejen her?
>
>
> mysql_query returnerer et resource link til et database result, det er
> dettte resource link, som du skal give som parameter til
> mysql_fetch_array - den del har du vist forstået, men...
>
> mysql_query returnerer et resource link, _hver gang_ du kalder den.
> Det du gør er altså at sende den samme query til databasen, igen og
> igen. Hver gang du sender dette query, for du self. et resource link
> tilbage, der peger på resultatet af din query.
>
> Det du opnår ved mysql_fetch_array(mysql_query(...)) kaldet, er altså at
> du hele tiden nulstiller dit resultat.
>
> Prøv i stedet at gemme resource link'et i en variabel, og giv denne som
> parameter til mysql_fetch_array():
>
> $dbRes = mysql_query("select * from articles ORDER BY LPAD(rank,10,0)
> DESC");
> while ( mysql_fetch_array($dbRes) ) {
> ...
> }
>
> MVH Per Thomsen,
> <http://www.pert.dk>


hmmm... mystisk... Jeg prøvede med

$sql = "select * from articles ORDER BY LPAD(rank,10,0) DESC";
$query = mysql_query($sql);
while ( mysql_fetch_array($query) ) {

tidligere. Der gentog den sig også bare i uendlighed.
Men, at lige netop

$query = mysql_query("select * from articles ORDER BY LPAD(rank,10,0)
DESC");
while ( mysql_fetch_array($query) ) {

Ikke gør det er sært for mig... Nå... Men tak anyways

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408927
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste