Nieuwste ID

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Thomas

Thomas

01/12/2006 13:57:00
Quote Anchor link
Ik ben bezig met een cms systeem. Ik wil het id dat bij het artikel hoord mee geven aan het plaatje.

Het probleem is dat als ik bijvoorbeeld record 9 en 10 heb, dan kan je het laatste record opvragen met id en die plus 1 doen. Maar als je bijvoorbeeld record 10 verwijderd en dan een nieuwe record toevoegd en het laatste record met id opvraagd, nummer 9 en die plus 1 doet word het 10. Maar als je de record toevoegt zal het nummer 11 worden.

Mijn vraag is dus, hoe kan je achter het id komen van de nieuwste record die nog toegevoegd moet worden. Is hier een trucje voor, of heeft iemand tips?
 
PHP hulp

PHP hulp

19/11/2024 05:34:30
 
Jurgen assaasas

Jurgen assaasas

01/12/2006 14:00:00
Quote Anchor link
op het moment dat jij je log/bericht aanmaakt stuur de je tijd en datum mee. Dus een nieuwe DATETIME field maken in SQL en dan in je query

$query = "INSERT INTO table (veld1, veld2, datumtijdveld) VALUES (veldwaarde1, veldwaarde2, NOW())";

Vervolgens bij het uitlezen ervan zet je in je SELECT query erachter.

ORDER BY datumtijdveld DESC
Gewijzigd op 01/01/1970 01:00:00 door Jurgen assaasas
 
Frank -

Frank -

01/12/2006 14:04:00
Quote Anchor link
Je hebt het hier waarschijnlijk over een kolom met de naam id die als eigenschap auto_increment heeft meegekregen. En omdat deze kolom geen enkele betekenis heeft, blijf jij met je vingertjes van de teller af! Een id gebruik je om een uniek record te herkennen, meer niet. Of hier nu het getal 9, 10 of 4628264 staat, het maakt geen ene moer uit. Ga hier nooit mee klooien, dit levert je een corrupte database op.

Met de functie mysql_insert_id() kun je na de INSERT-query het nieuwe id opvragen. Dit gebruik je bv. wanneer je in een andere INSERT-query (in een andere tabel) dit nummer nodig hebt om een verband te leggen met de INSERT in de eerste tabel (foreignkey).
 
Thomas

Thomas

01/12/2006 14:07:00
Quote Anchor link
@FRANK

Nee idd ik wilde er ook niet meet kloten met het id die auto increment heeft. Ik zat dus alleen met een probleem, maar door die mysql_insert_id krijg ik dus het id terug! En daar kan ik wel wat mee! Ik denk iig dat mijn vraag hiermee beantwoord is! Ik ga er mee aan de slag.
 
Thomas

Thomas

05/12/2006 16:16:00
Quote Anchor link
Ik probeerde het nog eens, en na precies hetzelde gedaan te hebben gaf hij het id mee terug. Dus het werkt en me vraag is nu overbodig.
Gewijzigd op 01/01/1970 01:00:00 door Thomas
 
Frank -

Frank -

05/12/2006 16:23:00
Quote Anchor link
De tabel 'articles' heeft wel een kolom met de eigenschap auto_increment? Zo nee, dan is het logisch dat je niets retour krijgt.

Je kunt trouwens met mysql_affected_rows() opvragen hoeveel rijen er zijn aangemaakt. Dat zal er 1 moeten zijn.

Gooi die @ uit je code, die onderdrukt foutmeldingen. En dat wil je niet.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.