Ankündigung

Einklappen
Keine Ankündigung bisher.

Platzhalter

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • funille
    hat ein Thema erstellt Platzhalter.

    Platzhalter

    Hi,

    gibt es eine Platzhalter in mysql bzw. einen Wert der für "alles" gilt?

    Habe ein Dropdownfeld und übergebe damit Werte. Auf Basis dieses Wertes wird eine Abfrage gemacht.
    PHP-Code:
    $abfrage "SELECT * FROM spiele where liga=$liga order by liga, datum desc"
    Also: gib mir die Spalten, wo liga der variable $liga entspricht.
    Gibt es nun einen Wert für die Variable, der mir dann wieder alle Werte ausgibt? Hab´s mal mit * und % probiert, das haut aber nicht hin. Oder geht das so gar nicht?

    Gruß und Danke!

  • Gast-Avatar
    Ein Gast antwortete
    PHP-Code:
    $query "SELECT * FROM spiele".(isset ($search) ? " WHERE liga = ".mysql_real_escape_string ($search) : "")." order by liga, datum desc"

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Variante

    a) wie oben if() und zwei Queries
    b)
    PHP-Code:
    if (isset ($search)) {
      
    $search '"' mysql_real_escape_string ($search) . '"';
    }
    else {
      
    $search 'liga'// muss dem Feldnamen entsprechen
    }

    $query "SELECT * FROM spiele where liga=" $search " order by liga, datum desc"
    c)
    PHP-Code:
    if (isset ($search)) {
      
    $search 'liga="' mysql_real_escape_string ($search) . '"';
    }
    else {
      
    $search '1'// immer wahre Bedingung
    }

    $query "SELECT * FROM spiele where " $search " order by liga, datum desc"
    usw.

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Auf jeden Fall fehlen noch Quotes, oder ist das ein numerischer Wert?

    Einen Kommentar schreiben:


  • funille
    antwortet
    hey!

    ja, richtig interpretiert. auf die idee bin ich gar nicht gekommen, habs jetzt aber anders gelöst.

    hab einfach ne variable $setliga eingeführt und je nach einstellung dann mit "and liga=1" gefüttert bzw. leer gelassen. schätze mal, deine lösung ist etwas eleganter, aber so lange es am ende funktioniert!

    danke trotzdem!

    Einen Kommentar schreiben:


  • Wolla
    antwortet
    Ich hoffe, dass ich deine Frage richtig interpretiere.
    PHP-Code:
    if ( $liga !='alle' ) {
      
    $abfrage "SELECT * FROM spiele where liga=$liga order by liga, datum desc";
    } else {
      
    $abfrage "SELECT * FROM spiele order by liga, datum desc";

    machst halt in deine Selectbox noch eine Zeile "alle" rein.

    Einen Kommentar schreiben:


  • Asipak
    antwortet
    Verstehe dein Problem auch nicht so recht. Die Wildcards in MySQL lauten _ und %, siehe: MySQL :: MySQL 5.0 Reference Manual :: 11.5.1 String Comparison Functions

    Bau halt eine Bedingung ein, über die du festlegst, ob gefiltert wird, oder nicht!

    Einen Kommentar schreiben:


  • funille
    antwortet
    das macht natürlich sinn, schon klar.

    wenn ich sie aber weglasse, kann ich ja gar nicht mehr filtern. ich übergebe ja von einem formular auf eine weitere seite.

    naja, hab jetzt nochmal bissl gelesen, und so nen wirklichen platzhalter scheints wohl nicht zu geben. dann muss ich das ganze halt dynamisch machen...

    danke trotzdem

    Einen Kommentar schreiben:


  • chorn
    antwortet
    Lass halt die Bedingung weg.

    Einen Kommentar schreiben:

Lädt...
X