Avatar billede ChristianRLarsen Nybegynder
17. marts 2011 - 16:59 Der er 7 kommentarer og
1 løsning

ID ændre sig automatisk til 0 efter ændringer?

Hej eksperter

Jeg er igang med et CMS system men er stødt på et problem. Mit problem er hvis jeg giver min post ID til 1 så ændre den automatisk til 0 igen, når jeg ændre indholdet i min post.

$query = "SELECT * FROM site_content WHERE Page = '$_GET[id]'";
$result = mysql_query($query);

while($post = mysql_fetch_array($result)) {

echo "<h4>" . $post['Post_Title'] . "</h4>";
echo "<h4>" . $post['Post_Author'] . "</h4>";
echo "<p>" . $post['Post_Content'] . "</p>";

Som i kan se hente den alle de post der er i min mysql under Page hvor værdien (ID) er 0, men da jeg kun skal hente en post ned af gangen, behøver de et ID der er forskelligt.

Hvordan gør jeg så de for et fast ID hver?
Avatar billede phillips Nybegynder
17. marts 2011 - 19:18 #1
Din id-kolonne skal være indstillet til at lave auto increment og til at være en primary key.

Det ændrer du direkte i databasen fx ved at bruge phpMyAdmin og gå ind i strukturen for den pågældende tabel.

Når du opretter nye posts skal du ikke selv indsætte et id. Med auto increment sker dette automatisk.
Avatar billede ChristianRLarsen Nybegynder
17. marts 2011 - 21:24 #2
Hej phillips

Men man kan da ikke havde 2 ID'er med auto increment og primary key?


MVH Christian
Avatar billede phillips Nybegynder
17. marts 2011 - 21:28 #3
Auto increment og primary key er på kolonne-basis - ikke række-basis, så jeg forstår ikke din sidste kommentar. En kolonne kan godt have begge dele.

Jeg går ud fra, du kun har én kolonne med id'er, der fx bare hedder id. Den kolonne skal være indstillet til at have auto increment (så id'er bliver oprettet automatisk fortløbende) samt være en primary key, så det er hurtigt at slå et id op i den kolonne.
Avatar billede ChristianRLarsen Nybegynder
17. marts 2011 - 22:00 #4
Altså jeg har alllerede en kolonne der hedder ID der er sat til auto increment og primary key. Men skal havde lavet en kolonne mere til mine posts som også skal havde auto incremenet og primary key. Fordi de posts der kommer i, skal ha et id hver (:


MVH Christian
Avatar billede phillips Nybegynder
18. marts 2011 - 09:37 #5
Hvorfor vil du have to id-kolonner i samme tabel?

Prøv at vise:
- hvordan din tabel ser ud
- hvordan din INSERT statement ser ud
- hvordan din UPDATE statement ser ud
Avatar billede ChristianRLarsen Nybegynder
18. marts 2011 - 18:39 #6
Hej Phillips

Bare glem det med 2 kolonner med primary key og auto incremenet. Mit problem er endelig bare hvordan jeg kun fremkalder min ene post fra min mysql kolonne som hedder Posts.

Altså det jeg har gjort er, jeg har oprettet en kolonne som hedder Posts under den har jeg indsat 2 posts. Med ID der begge er 0, men hvordan fremkalder jeg kun den ene? hvis jeg skriver

WHERE ID = $_GET[id];

Så fremkalder den begge posts? s:

MVH Christian
Avatar billede ChristianRLarsen Nybegynder
18. marts 2011 - 18:52 #7
Hej Phillips

Jeg fandt ud af det selv nu. Men læg et svar da du skal ha tak for hjælpen (:
Avatar billede phillips Nybegynder
19. marts 2011 - 10:08 #8
Super :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester