/ 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
Første post vises ikke i while lø
Fra : Chris


Dato : 20-05-04 21:09

Hej,

Kan nogen fortælle mig hvorfor første post konsekvent ikke udskrives når
jeg trækker data fra en tabel og udskriver fra en while løkke. Jeg har
prøvet med udtræk fra forskellige tabeller og problemet er det samme.

<?php
$sql_forfatter = "SELECT navn FROM personer ORDER BY id";
$result_forfatter = mysql_query($sql_forfatter);
$array_forfatter = mysql_fetch_array($result_forfatter);
while ($array_forfatter = mysql_fetch_array($result_forfatter)){
   echo $array_forfatter["navn"];
}
?>

/Chris

 
 
Christian Joergensen (20-05-2004)
Kommentar
Fra : Christian Joergensen


Dato : 20-05-04 20:06

On Thu, 20 May 2004 21:09:25 +0100, Chris wrote:

> Kan nogen fortælle mig hvorfor første post konsekvent ikke udskrives når
> jeg trækker data fra en tabel og udskriver fra en while løkke. Jeg har
> prøvet med udtræk fra forskellige tabeller og problemet er det samme.
>
> $array_forfatter = mysql_fetch_array($result_forfatter);
> while ($array_forfatter = mysql_fetch_array($result_forfatter)){

Du henter den jo også to gange
Ergo går du glip af den første.

--
Christian Jørgensen
http://www.razor.dk


Chris (20-05-2004)
Kommentar
Fra : Chris


Dato : 20-05-04 21:30

Christian Joergensen wrote:

> Du henter den jo også to gange
> Ergo går du glip af den første.

Ups, naturligvis - tak! Findes der iøvrigt ikke i PHP en kommando som
bladrer tilbage til første post ligesom res.moveFirst() i ASP (koder
normalt ASP mener er ved at konvertere om til PHP)

/Chris


Kasper Garnæs (20-05-2004)
Kommentar
Fra : Kasper Garnæs


Dato : 20-05-04 20:33

Chris <csv72@netscape.net> wrote:
> Findes der iøvrigt ikke i PHP en kommando som
> bladrer tilbage til første post ligesom res.moveFirst() i ASP (koder
> normalt ASP mener er ved at konvertere om til PHP)

Prøv med mysql_field_seek($resultSet, 0)
(http://dk2.php.net/manual/en/function.mysql-field-seek.php).

--
Med venlig hilsen / Regards
Kasper Garnæs
http://kasper.garnaes.dk



Kasper Garnæs (20-05-2004)
Kommentar
Fra : Kasper Garnæs


Dato : 20-05-04 20:38

Kasper Garnæs <demos@mailme.dk> wrote:
> Chris <csv72@netscape.net> wrote:
>> Findes der iøvrigt ikke i PHP en kommando som
>> bladrer tilbage til første post ligesom res.moveFirst() i ASP (koder
>> normalt ASP mener er ved at konvertere om til PHP)
>
> Prøv med mysql_field_seek($resultSet, 0)
> (http://dk2.php.net/manual/en/function.mysql-field-seek.php).

Oops - det skulle selvfølgelig have været mysql_data_seek($resultSet, 0)
(http://dk2.php.net/manual/en/function.mysql-data-seek.php).

--
Med venlig hilsen / Regards
Kasper Garnæs
http://kasper.garnaes.dk



Christian Joergensen (20-05-2004)
Kommentar
Fra : Christian Joergensen


Dato : 20-05-04 20:36

On Thu, 20 May 2004 21:30:00 +0100, Chris wrote:

> Ups, naturligvis - tak! Findes der iøvrigt ikke i PHP en kommando som
> bladrer tilbage til første post ligesom res.moveFirst() i ASP

Mon ikke du kan bruge mysql_data_seek():
http://www.php.net/manual/en/function.mysql-data-seek.php

> (koder normalt ASP mener er ved at konvertere om til PHP)

Klogt

--
Christian Jørgensen
http://www.razor.dk


Jimmy (20-05-2004)
Kommentar
Fra : Jimmy


Dato : 20-05-04 20:10


"Chris" <csv72@netscape.net> wrote in message
news:40ad00f1$0$132$edfadb0f@dread11.news.tele.dk...
> Hej,
>
> Kan nogen fortælle mig hvorfor første post konsekvent ikke udskrives når
> jeg trækker data fra en tabel og udskriver fra en while løkke. Jeg har
> prøvet med udtræk fra forskellige tabeller og problemet er det samme.
>
> <?php
> $sql_forfatter = "SELECT navn FROM personer ORDER BY id";
> $result_forfatter = mysql_query($sql_forfatter);
> $array_forfatter = mysql_fetch_array($result_forfatter);
> while ($array_forfatter = mysql_fetch_array($result_forfatter)){
> echo $array_forfatter["navn"];
> }
> ?>


Prøv med:

> <?php
> $sql = "SELECT navn FROM personer ORDER BY id";
> $result = mysql_query($sql);
> while ($array_forfatter = mysql_fetch_array($result)){
> echo $array_forfatter["navn"];
> }
> ?>

Med mindre dit "id" er et super ukonventionelt navn, er det skidt at sortere
på ID. Du bør sortere på en kolonne der giver mening, f.eks. Navn.



Mvh
Jimmy



Bertel Lund Hansen (20-05-2004)
Kommentar
Fra : Bertel Lund Hansen


Dato : 20-05-04 20:16

Chris skrev:

>$array_forfatter = mysql_fetch_array($result_forfatter);

Der hentede du første navn.

>while ($array_forfatter = mysql_fetch_array($result_forfatter))

.... og der forsvandt det i den blå luft.

--
Bertel
http://bertel.lundhansen.dk/   FIDUSO: http://fiduso.dk/

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

Månedens bedste
Årets bedste
Sidste års bedste