kostenloser Webspace werbefrei: lima-city


Datenbank Ausgabe durch Kommas trennen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    kill-a-teddy

    Kostenloser Webspace von kill-a-teddy

    kill-a-teddy hat kostenlosen Webspace.

    Hallo,
    einige haben bestimmt schon mitbekommen, dass ich daweil am tun und machen bin hier und um nicht großartig drumrum zu reden:

    Ich suche eine Lösung, wie ich Daten, aus einer Tabelle auslesen kann, des Inhalt der einer Variable ist. In dieser Tabelle hat die Reihe inder nach einem gleichen Wort, wie die Variable gesucht wird aber mehrere Stellen, die alle mit Komma getrennt sind.

    Meine Abfrage ist folgende:

    $query = "SELECT * FROM posts WHERE categorie='hardware' ORDER BY date";


    Mal angenommen in "categorie" steht nicht "hardware", sondern "hardware,kopfhörer,musik".. Wie trenne ich das ganze?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Mit nichts anderem als explode :) Oder lieber als reine MySQL-Funktion?

    EDIT:

    SELECT * 
    FROM  `posts` 
    WHERE  `categorie` LIKE  '%hardware%'
    ORDER BY date


    Beitrag zuletzt geändert: 24.1.2012 16:06:19 von fabo
  4. Autor dieses Themas

    kill-a-teddy

    Kostenloser Webspace von kill-a-teddy

    kill-a-teddy hat kostenlosen Webspace.

    fabo schrieb:
    Mit nichts anderem als explode :) Oder lieber als reine MySQL-Funktion?


    Perfekt danke :) Ein anliegen wäre da allerdings noch...

    Mein Code:
    $query = "SELECT * FROM posts ORDER BY date";    
    $result = mysql_query($query, $connection) or die (mysql_error()); 
    
    $keywords = preg_split("/[\s,]+/", $query);
    echo $keywords;


    Gibt mir zwar jetzt alles aus, aber er schreibt auch in Textform auf die Seite "Array"... Warum?
  5. Ich hab das Ganze nochmal editiert (s.o). Hab die Frage erst nicht verstanden.

    Du kannst die Rückgabe dann einfach splitten und fertig.

    Im Übrigen wundert es mich, dass das so funktioniert hat bei dir, da du preg_split auf $query anwedest, wo wiederrum gar kein Komma vorkommt, wo man trennen könnte.

    Ferner erstellt preg_split logischerweise ein Array. Ich weiß ja nicht, was genau du vorhast.

    Beitrag zuletzt geändert: 24.1.2012 16:10:06 von fabo
  6. Autor dieses Themas

    kill-a-teddy

    Kostenloser Webspace von kill-a-teddy

    kill-a-teddy hat kostenlosen Webspace.

    fabo schrieb:
    Ich hab das Ganze nochmal editiert (s.o). Hab die Frage erst nicht verstanden.

    Du kannst die Rückgabe dann einfach splitten und fertig.



    Also das echo wieder raus


    //EDIT: Jetzt folgendes: Beim auslesen werden nun auch diejenigen ausgelesen, dessen categorie nicht hardware ist...

    Beitrag zuletzt geändert: 24.1.2012 16:14:12 von kill-a-teddy
  7. Erklär bitte kurz, was genau du vor hast...
  8. Autor dieses Themas

    kill-a-teddy

    Kostenloser Webspace von kill-a-teddy

    kill-a-teddy hat kostenlosen Webspace.

    fabo schrieb:
    Erklär bitte kurz, was genau du vor hast...


    Es sollen alle einträge, deren categorie "hardware" ist ausgelesen werden....


    z.B.
    if ($keywords == Hardware){}
  9. Achso.

    Na dann ists doch kein Problem:

    $keyword = 'hardware';
    $result = mysql_query('SELECT * FROM  `posts` WHERE  `categorie` LIKE  '%'.$keyword.'%' ORDER BY date');
    
    while ($row = mysql_fetch_assoc($result)) {
        echo $row['categorie']; // Eventuell explode(), um mit Komma seperierte Kategorien voneinander zu trennen und auszugeben
    }


    Beitrag zuletzt geändert: 24.1.2012 16:22:15 von fabo
  10. Autor dieses Themas

    kill-a-teddy

    Kostenloser Webspace von kill-a-teddy

    kill-a-teddy hat kostenlosen Webspace.

    fabo schrieb:
    Achso.

    Na dann ists doch kein Problem:

    $keyword = 'hardware';
    $result = mysql_query('SELECT * FROM  `posts` WHERE  `categorie` LIKE  '%'.$keyword.'%' ORDER BY date');
    
    while ($row = mysql_fetch_assoc($result)) {
        echo $row['categorie']; // Eventuell explode(), um mit Komma seperierte Kategorien voneinander zu trennen und auszugeben
    }


    Warning: Division by zero in D:\xampp\htdocs\werd-schlau\Kategorien\hardware.php on line 306

    Warning: Division by zero in D:\xampp\htdocs\werd-schlau\Kategorien\hardware.php on line 306
    Query was empty

    Betroffene Zeile ist genau die ebend gepostete


    //EDIT: kleiner Fehler, für meine Nachfolger:

    $keyword = 'Hardware';
    $query = 'SELECT * FROM posts WHERE categorie LIKE "%'.$keyword.'%" ORDER BY date';    
    $result = mysql_query($query, $connection) or die (mysql_error());

    das funzt nun

    Beitrag zuletzt geändert: 24.1.2012 16:50:51 von kill-a-teddy
  11. 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!