Seite 1 von 5 12345 LetzteLetzte
Ergebnis 1 bis 10 von 42

Thema: Variablen Wert auf "egal" setzen

  1. #1
    Meister(in)
    Registriert seit
    11.10.2006
    Beiträge
    299
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Variablen Wert auf "egal" setzen

    Hallo,

    zur Zeit versuche ich mich etwas in MySQL und php einzuarbeiten.

    Bei meiner persönlichen Übung bin ich jetzt aber an einem ersten Knackpunkt angekommen:

    Ich habe eine Tabelle in der verschiedene Berufe stehen. Ich kann auch prima nach einem Beruf suchen, also wenn ich jetzt nach "Lehrer" suche werden auch alle Einträge gefunden. Die Abfrage soll aber neben dem Beruf auch weitere Variablen erhalten und es soll auch möglich sein, nichts einzugeben (oder vielmehr den Wert "egal" aus dem Dropdownmenü zu wählen) und dann soll man alle Berufe angezeigt bekommen. Wie mach ich das?

    Zur Veranschaulichung: http://idadi.id.ohost.de/db/

    PHP-Code:
    <?php
    $abfrage 
    "SELECT * FROM suche WHERE beruf='$beruf'";
    $ergebnis mysql_query($abfrage);
    while(
    $row mysql_fetch_object($ergebnis))
       {
       echo 
    "$row->id$row->beruf$row->plz$row->wertung, <br>";

       }
    ?>
    Hoffe ihr wisst, was ich meine

    Danke
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!


  2. #2
    Bandit
    Gast

    Standard AW: Variablen Wert auf "egal" setzen

    Wenn nichts eingegeben wurde, ist die Variable leer, dann kannst du die Bedingung einfach weglassen.

  3. #3
    Meister(in)
    Themenstarter

    Registriert seit
    11.10.2006
    Beiträge
    299
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Variablen Wert auf "egal" setzen

    danke für die schnelle Antwort!

    Kann man auch ein Auswahlfeld einfügen, das leer ist? Wenn ich nach <option> einfach nix schreibe funktioniert das leider nicht. Es wär aber wichtig, da es ja sein könnte, dass ich zuerst einen Beruf auswähle und dann mich aber umentscheide und alle berücksichtigen will - dann habe ich aber keine Auswahlmöglichkeit mehr...


  4. #4
    Bandit
    Gast

    Standard AW: Variablen Wert auf "egal" setzen

    <option value="">Alle</option>

    oder
    <option value=""></option>

  5. #5
    Meister(in)
    Themenstarter

    Registriert seit
    11.10.2006
    Beiträge
    299
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Variablen Wert auf "egal" setzen

    Danke für das schnelle Antworten!

    Ich habe das jetzt mal ausprobiert, aber wenn ich dann unter dem oben genannten Link bei Berufe alle auswähle und in der letzten Box z.B. ** wird nichts gefunden obwohl entsprechende Datensätze existieren.

    Habe in der Zwischenzeit auch am Code geschraubt - vielleicht hab ich da was kaputt gemacht...

    PHP-Code:
    <?php 
    if ($plz 10000 AND $plz !='')
        { die (
    "Bitte geben Sie eine 5stellige Postleitzahl ein"); }
        
        else
    ?>

    <?php
    $abfrage 
    "SELECT * FROM suche WHERE beruf='$beruf' AND wertung='$wertung'";
    $ergebnis mysql_query($abfrage);

    // Vorhandensein eines Ergebnnisses überprüfen

    $num_rows mysql_num_rows($ergebnis);

    if (
    $num_rows == 0)
        {
            echo 
    "Zu Ihrer Anfrage wurden keine Ergebnisse gefunden.";
            }
            
            else
    // Ende der Überprüfung
            
    while($row mysql_fetch_object($ergebnis))
       {
       echo 
    "$row->id$row->beruf$row->plz$row->wertung, <br>";

       }
    ?>
    Ich bedanke mich nochmals für die Mühen
    Geändert von Questionmark (30.12.2008 um 21:15 Uhr)


  6. #6
    Großmeister(in)
    Registriert seit
    09.12.2008
    Ort
    Berlin
    Alter
    38
    Beiträge
    666
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Variablen Wert auf "egal" setzen

    Bsp.:
    HTML-Code:
    <select name='beruf'>
    <option value="Metzger">Metzger</option>
    <option value="">Alle</option>
    </select>
    Dann gehst du bei der auswertung folgendermaßen vor:
    PHP-Code:
    $where = empty($_POST['beruf']) ? "" " WHERE beruf='".mysql_real_escape_string($_POST['beruf'])."'";
    // identisch mit:
    // if(empty($_POST['beruf']))
    //     $where = "";
    // else
    //     $where = " WHERE beruf='".mysql_real_escape_string($_POST['beruf'])."'";
    $abfrage "SELECT * FROM suche".$where

  7. #7
    Bandit
    Gast

    Standard AW: Variablen Wert auf "egal" setzen

    Warum soll ich nicht SELECT * schreiben?
    http://php.faq-page.net/q-sql-select.html

  8. #8
    Großmeister(in)
    Registriert seit
    09.12.2008
    Ort
    Berlin
    Alter
    38
    Beiträge
    666
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Variablen Wert auf "egal" setzen

    Ja hast recht, hab ich grad nicht berücksichtigt.

  9. #9
    Meister(in)
    Themenstarter

    Registriert seit
    11.10.2006
    Beiträge
    299
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Variablen Wert auf "egal" setzen

    Danke für den Lösungsansatz, den ich leider nicht ganz verstehe:
    Dann gehst du bei der auswertung folgendermaßen vor:
    PHP-Code:
    .......
    // else
    //     $where = " WHERE beruf='".mysql_real_escape_string($_POST['beruf'])."'";
    $abfrage "SELECT * FROM suche".$where
    Meine Fragen:

    1. Warum kann ich nach else nicht einfach schreiben $where = $beruf?
    wozu dient:WHERE beruf='".mysql_real_escape_string?

    2. was ist die Logik hinter dem Aufbau von $abfrage? Vor allem das .$where am Ende verwirrt mich.

    Sorry, aber ich beschäftige mich zum ersten Mal intensiver mit php
    Gern nehme ich auch einen Link als Erklärung


  10. #10
    Bandit
    Gast

    Standard AW: Variablen Wert auf "egal" setzen

    zu 1. Einfach mal die Doku lesen: http://de.php.net/manual/de/function...ape-string.php

    zu 2. Was verwirrt dich daran? Diese Variable wird in Abhängigkeit der Auswahl entsprechend gesetzt, entweder leer oder mit einer Bedingung.

Ähnliche Themen

  1. Border-Bottom: noch "zarter" als "1px dashed"?
    Von Mütze im Forum HTML & CSS Forum
    Antworten: 2
    Letzter Beitrag: 19.09.2008, 18:10
  2. Texte/Zahlen unter "variablen" Grafiken
    Von infernalshade im Forum HTML & CSS Forum
    Antworten: 0
    Letzter Beitrag: 21.05.2007, 13:49
  3. Urheberrechtlich geschützter Wert "Height" ???
    Von Mütze im Forum HTML & CSS Forum
    Antworten: 4
    Letzter Beitrag: 13.12.2006, 13:18
  4. php: "bitte warten" oder "login läuft"
    Von phore im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 05.04.2006, 18:18
  5. Text immer "unten" und "rechts" am Frame
    Von Valdyn im Forum HTML & CSS Forum
    Antworten: 5
    Letzter Beitrag: 25.05.2004, 19:14

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •