/ 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
SQL, find og udskriv sidste id-nummer ?
Fra : Jakob Munck


Dato : 14-11-05 09:07

Jeg forsøger at finde og udskrive det sidste (=højeste) id-nummer i en tabel
(tbMedlemmer). Det har jeg skrevet sådan:

<?
$sql=@mysql_query("SELECT TOP 1 * FROM tbMedlemmer SORT BY id");
$data = mysql_fetch_array($sql);
echo $data["id"];
?>

Fejlmeddelelsen siger:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result
resource in C:\Programmer\xampp\htdocs\web\Visito.org\find_id.php on line 29


Hvad gør jeg galt?

v.h.
Jakob



 
 
Troels Arvin (14-11-2005)
Kommentar
Fra : Troels Arvin


Dato : 14-11-05 09:21

On Mon, 14 Nov 2005 09:06:41 +0100, Jakob Munck wrote:

> Jeg forsøger at finde og udskrive det sidste (=højeste) id-nummer i en tabel
> (tbMedlemmer). Det har jeg skrevet sådan:

Hvad med 'SELECT MAX(id) FROM tbMedlemmer'?

--
Greetings from Troels Arvin


Jakob Munck (14-11-2005)
Kommentar
Fra : Jakob Munck


Dato : 14-11-05 09:50

>
> Hvad med 'SELECT MAX(id) FROM tbMedlemmer'?
>

Desværre, når jeg kalder:

<?
$sql=@mysql_query("SELECT MAX(id) FROM tbmedlemmer");

$data = mysql_fetch_array($sql);
echo $data["id"];
?>

Får jeg intet ud på skærmen. Den viser ingen fejlmelding, men heller intet
resultat!

v.h.
Jakob



Kim Schulz (14-11-2005)
Kommentar
Fra : Kim Schulz


Dato : 14-11-05 10:11

On Mon, 14 Nov 2005 09:50:08 +0100
"Jakob Munck" <jm2_fjern_dette@webspeed.dk> wrote:

> >
> > Hvad med 'SELECT MAX(id) FROM tbMedlemmer'?
> >
>
> Desværre, når jeg kalder:
>
> <?
> $sql=@mysql_query("SELECT MAX(id) FROM tbmedlemmer");
>
> $data = mysql_fetch_array($sql);
> echo $data["id"];
> ?>
>
> Får jeg intet ud på skærmen. Den viser ingen fejlmelding, men heller
> intet resultat!

det du får ud hedder ikke id mere men "MAX(id)" prøv med:

$sql=@mysql_query("SELECT MAX(id) as id FROM tbmedlemmer");


Jesper H (14-11-2005)
Kommentar
Fra : Jesper H


Dato : 14-11-05 12:40

Hey Jakob

Du kan evt. bruge mysql_insert_id() til at finde det sidst indsatte id.
Se evt.
http://dk2.php.net/manual/en/function.mysql-insert-id.php

Hvis du ikke kan se hvad der er i dine arrays (fordi de f.eks. hedder
noget andet end $data['id'] men istedet $data['max(id)'] ) kan du bruge
f.eks. print_r($data) for at se hvad en variabel indeholder. Husk det
skal helst stå indenfor pre-tags.

Mvh
Jesper


Martin (14-11-2005)
Kommentar
Fra : Martin


Dato : 14-11-05 14:10

Jakob Munck wrote:
> Jeg forsøger at finde og udskrive det sidste (=højeste) id-nummer i en tabel
> (tbMedlemmer). Det har jeg skrevet sådan:
>
> <?
> $sql=@mysql_query("SELECT TOP 1 * FROM tbMedlemmer SORT BY id");
> $data = mysql_fetch_array($sql);
> echo $data["id"];
> ?>
>
> Fejlmeddelelsen siger:
> Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result
> resource in C:\Programmer\xampp\htdocs\web\Visito.org\find_id.php on line 29
>

Den fejlmeddelse betyder at det ikke er en sql streng der er blevet
returneret.

Du kan finde ud af hvad der er galt således

FØRST: Fjern @ - der er ingen grund til at have den, for hvis der er en
fejl, så er det DIG der har lavet en fejl, og næppe databasen :)

For det andet så kan du skrive

mysql_query("SELECT ...... ") OR DIE (mysql_error());

så får du en mysql_error hvis der er nogen :)


>
> Hvad gør jeg galt?
>
> v.h.
> Jakob
>
>

--

Venlig hilsen
Martin


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

Månedens bedste
Årets bedste
Sidste års bedste