kostenloser Webspace werbefrei: lima-city


Datensatz auslesen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    finch

    Kostenloser Webspace von finch, auf Homepage erstellen warten

    finch hat kostenlosen Webspace.

    kann mir mal schnell jmd helfen, sehe vor lauter Wald die Bäume nicht mehr...

    Wie kann ich Aus einer MYSQL tag/tabelle">Tabelle ein bestimmten Datensatz auslesen(zb. 3. Datensatz)??
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Indem du in der SQL-Abfrage eine Where-Bedingung einbaust.

    z.B. SELECT * FROM Tabellenname WHERE ID=3
  4. t*****b

    Dann hast du nicht zwingend den dritten Datensatz, wenn ein Datensatz mit der einer davorigen oder derselben ID gelöscht wurde. Ich mache mir jetzt nicht die Mühe zu probieren wie das geht, da es in meinen Augen keinen Sinn macht (denn man übergibt meistens einen Bezug auf die Tabelle von der man auslesen möchte).

  5. Dann hast du nicht zwingend den dritten Datensatz, wenn ein Datensatz mit der einer davorigen oder derselben ID gelöscht wurde. Ich mache mir jetzt nicht die Mühe zu probieren wie das geht, da es in meinen Augen keinen Sinn macht (denn man übergibt meistens einen Bezug auf die Tabelle von der man auslesen möchte).


    Da gebe ich dir Recht, ist nicht so toll. Allerdings war oben dies als Beispiel angegeben und deshalb hab ich damit mal argumentiert.
    Man sollte natürlich ein klareres Kriterium nutzen.
  6. Autor dieses Themas

    finch

    Kostenloser Webspace von finch, auf Homepage erstellen warten

    finch hat kostenlosen Webspace.

    Danke, war ne hilfe! Mit FROM und LIMIT natürlich.

    Das bau ich bei meiner Newsansicht ein. Es soll immer der aktuelle Eintrag kommen. Doch daneben
    soll ne liste sein wo man auch die alten Newseinträge lesen kann.
    Und dann brauch ich zB den 3. oder 4. oder 1. ...

    Hab ich schon gelöst, danke! Und haut supi hin.

    Aber noch was anderes. Auf der Titelseite möcht ich mir die aktuellen gästebucheinträge anzeigen lassen.
    In meiner Datenbank hab ich einen Feldtyp timestamp. Ich möchte die Einträge der letzten 7 Tage haben.

    Wird ca so gehen:

    $query = \"SELECT * FROM `gaestebuch` ORDER BY Datum DESC-7Tage\";


    kann das jmd richtigstellen?? DANKE
  7. t*****b


    Danke, war ne hilfe! Mit FROM und LIMIT natürlich.

    Das bau ich bei meiner Newsansicht ein. Es soll immer der aktuelle Eintrag kommen. Doch daneben
    soll ne liste sein wo man auch die alten Newseinträge lesen kann.
    Und dann brauch ich zB den 3. oder 4. oder 1. ...


    SELECT * FROM tabelle ORDER by ID ASC LIMIT 1, 5 (listet ab dem zweiten (1, erster Datensatz = 0) Datensatz fünf (5) Datensätze auf)

    /EDIT Logikfehler


    Beitrag geändert: 18.7.2008 11:38:39 von trueweb
  8. Autor dieses Themas

    finch

    Kostenloser Webspace von finch, auf Homepage erstellen warten

    finch hat kostenlosen Webspace.

    jop das ist mir klar, ich möchte aber alle Einträge die in der letzten woche
    sprich 7 Tage, eingetragen wurden und wenn kein Eintrag in der letzten woche
    gemacht wurde würd ich bei der Startseite das Feld neue Gästebucheinträge
    gar nicht anzeigen lassen... alles kein problem mit php. Meine Frage war wie
    man mittels mysql und select datumsmäßig abfragen macht.
  9. Kommt ganz drauf an, wie dein Datumsformat ist, aber im Prinzip lautet die Abfrage
    SELECT * FROM `tabelle` WHERE datum>datum-7Tage ORDER BY id

    Wobei du es auch anders ordnen kannst und nicht nach id.
    Der Ausdruck datum>datum-7Tage ist wie gesagt abhängig von deinem Datumsformat, bei einem Timestamp müsstest du nur die Sekunden für 7 Tage abziehen (60*60*24*7).
  10. Autor dieses Themas

    finch

    Kostenloser Webspace von finch, auf Homepage erstellen warten

    finch hat kostenlosen Webspace.

    hi tct, kannst mir das noch in nen select befehl einpaken müsste sonst noch urlang im
    netz herumsuchen...

    SELECT * FROM `tabelle` WHERE datum_tmst > (??heute??-604800)


    datum_tmst ist im format timestamp

    Bitte um Richtigstellung!! DANKE
  11. SELECT id FROM tabelle ORDER BY id ASC LIMIT 3,1
    ;)
  12. Autor dieses Themas

    finch

    Kostenloser Webspace von finch, auf Homepage erstellen warten

    finch hat kostenlosen Webspace.

    hhh??? Das is keine Hilfe.


    Ich möchte die Datensätze die nicht älter sind als 1 Woche....

  13. hi tct, kannst mir das noch in nen select befehl einpaken müsste sonst noch urlang im netz herumsuchen...


    Im Prinzip stimmt dein Code doch schon so, du musst nur ??heute?? durch die momentane Zeit ersezten. Entweder du definierst vorher irgendwo $time=time(); und setzt das für ??heute?? ein, oder du lässt MySQL die Arbeit selbst machen, indem du UNIX_TIMESTAMP() verwendest.
    SELECT * FROM `tabelle` WHERE datum_tmst > (UNIX_TIMESTAMP()-604800)

    Könnte so gehen.
  14. Autor dieses Themas

    finch

    Kostenloser Webspace von finch, auf Homepage erstellen warten

    finch hat kostenlosen Webspace.

    Hi, das funktioniert nicht!

    WHERE datum_tmst > (UNIX_TIMESTAMP()-604800)

    es schrenkt die Auswahl nicht ein, auch wenn ich nichts subtrahiere
    werden alle datensätze ausgelesen.

    Auch mit time() kann ich nicht vergleichen da es ein ganz anderes format hat wie timestamp!

    Beitrag geändert: 20.7.2008 13:53:37 von finch
  15. <?php
    $time = time() - 604800;
    $query = mysql_query(\"SELECT * FROM tabelle WHERE time > \'$time\'\");
    ?>
  16. Autor dieses Themas

    finch

    Kostenloser Webspace von finch, auf Homepage erstellen warten

    finch hat kostenlosen Webspace.

    auch das schrenkt die auswahl nicht ein, alle datensätze werden ausgegeben...
  17. SELECT * FROM table ORDER BY id ASC LIMIT 3,1

    würd ich mal sagen... :D

    Beitrag geändert: 21.7.2008 8:55:30 von tarabas
  18. m******s

    So langsam würde ich mich um die Speicherung und Struktur deiner Tabelle sorgen machen, denn wenn beide bisher gewählten Wege nicht funktionieren, würde ich fast vermuten, dass da irgendwo der Wurm in der Tabelle steckt...
  19. p***********d

    Wieso schwer wenns einfach geht? Gibt doch die netten Funktionen von MySQL :biggrin:

    WHERE DATE_SUB(CURDATE(), INTERVAL 7 DAY) > datum

    Wobei Datum das MySQL Feld bezeichnet.

    http://dev.mysql.com/doc/refman/5.1/de/date-and-time-functions.html
    Google is ya friend...

    Beitrag geändert: 22.7.2008 0:40:59 von pinguinfreund
  20. Autor dieses Themas

    finch

    Kostenloser Webspace von finch, auf Homepage erstellen warten

    finch hat kostenlosen Webspace.

    Danke, das ist die Lösung es haut voll hin!!

    Danke!
  21. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!