Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] PHP, MySQL Preise auslesen

Einklappen

Neue Werbung 2019

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

  • Prodesign
    hat ein Thema erstellt [Erledigt] PHP, MySQL Preise auslesen.

    [Erledigt] PHP, MySQL Preise auslesen

    Hallo Leute,

    ich bräuchte Hilfe mit einem PHP Code, versuche mich mal zu Erklären:
    Also ich Schreibe gerade ein KFZ Portal für einen Kunden und hänge nun bei einer Suchfunktion, wo man die Preise auswählen kann, z.B von 500€ bis 1000€, dass alles Fahrzeuge angezeigt werden die zwischen 500€ und 1000€ kosten. Hier mal mein Script wie ich es zur Zeit aufgebaut ist.

    <select class="select" style="width:100px;" name="price">
    <option> -- </option>
    <option value="1000">1.000 €</option>
    <option value="2000">2.000 €</option>
    <option value="3000">3.000 €</option>
    <option value="4000">4.000 €</option>
    <option value="5000">5.000 €</option>
    <option value="6000">6.000 €</option>
    <option value="7000">7.000 €</option>
    <option value="8000">8.000 €</option>
    <option value="9000">9.000 €</option>
    <option value="10000">10.000 €</option>
    </select>
    <select class="select" style="width:100px;" name="price">
    <option> -- </option>
    <option value="1000">1.000 €</option>
    <option value="2000">2.000 €</option>
    <option value="3000">3.000 €</option>
    <option value="4000">4.000 €</option>
    <option value="5000">5.000 €</option>
    <option value="6000">6.000 €</option>
    <option value="7000">7.000 €</option>
    <option value="8000">8.000 €</option>
    <option value="9000">9.000 €</option>
    <option value="10000">10.000 €</option>
    </select>
    <?php
    $secure_sql_brand = mysql_real_escape_string ($_POST['brand']);
    $secure_sql_carb = mysql_real_escape_string ($_POST['carb']);
    $secure_sql_type_stat = mysql_real_escape_string ($_POST['type_stat']);
    $secure_sql_price = mysql_real_escape_string ($_POST['price']);

    $sql = "SELECT * FROM automaart_dbs.sales WHERE brand LIKE '".$secure_sql_brand."%' AND carb LIKE '".$secure_sql_carb."%' AND type_stat LIKE '".$secure_sql_type_stat."%' AND price LIKE '".$secure_sql_price."%' AND status_public='1' ORDER BY id DESC";
    $result = mysql_query( $sql );
    while( $row = @mysql_fetch_assoc( $result ) ) {
    ?>

  • Prodesign
    antwortet
    Euere Infos haben gut geholfen, passt weil und Funktionniert, jetzt arbeite ich mich noch in PDO ein Danke Jungs

    Einen Kommentar schreiben:


  • Prodesign
    antwortet
    Es funktionniert jetzt. Besten Dank für die Super Tips und schnelle Hilfe

    Einen Kommentar schreiben:


  • Prodesign
    antwortet
    Okay, danke mal für diese Infos, werde mir das mal anschauen und auf meine Sprache übersetzen.

    Einen Kommentar schreiben:


  • tkausl
    antwortet
    Prodesign was du genau willst kann ich verstehen, allerdings gehe ich davon aus, dass du die Grundlagen beherrschst da du dich selbst als Fortgeschrittener einschätzt. Da dein Problem eigentlich ziemlich Simpel ist verstehe ich daher nicht, wo genau du dabei nicht weiterkommst.

    Einen Kommentar schreiben:


  • VPh
    antwortet
    Erstmal, http://www.php.de/php-einsteiger/489...nsammlung.html

    Dann
    Die mysql_* Erweiterung ist veraltet und wird in der nächsten PHP-Version entfernt. Zudem ist deine Query anfällig für SQL-Injections (aktuell nicht, aber falls du Variablen in dein Insert nimmst).
    Durch einen Wechsel auf mysqli_* oder PDO greifst du aufdie modernere API zu und hast die Möglichkeiten Prepared Statements zu benutzen die gegen Injections wirken.
    Ich persönlich bevorzuge PDO, schönes Tutorial: http://www.peterkropff.de/site/php/pdo.htm


    Und http://www.php.de/php-einsteiger/ weil: http://www.php.de/php-fortgeschritte...uncements.html


    Es ist verständlich was du erreichen möchtest, aber es hapert wirklich an Grundlagen MySQL bei dir.
    "select auto from tabelle where price between $a and $b"
    http://dev.mysql.com/doc/refman/5.1/...operators.html

    + Wie schon gesagt wurde, deine beiden Selectboxen haben den selben Namen, dadurch überschreibt die 2. natürlich die Auswahl der ersten.
    Lösung: vergib unterschiedliche Namen.
    Alternative: Multiselect, wodurch mehrere Werte in einer Liste ausgewählt werden können.

    Einen Kommentar schreiben:


  • Prodesign
    antwortet
    Also ich versuche nochmal, mein Deutsch ist nicht so gut

    ich habe eine Datenbank mit einer Tabelle: "PRICE" in dieser tabelle befinden sich dementsprechend abgespeicherte Preise, z.b 500, 1000, 10000 etc. So, wenn ich nun die SELECT BOX auswähle und eine Suche starten möchte ein PKW zu suchen das zwischen 500 und 1000€ kostet soll es per SQL Befehl halt eben das SELECT den Wert ermittelen und die Fahrzeuge ausgeben die zwieschen 500 und 1000€ liegen. Ich hoffe, du konntest mich nun besser Verstehen?

    Einen Kommentar schreiben:


  • tkausl
    antwortet
    Solange die beiden Selectboxen den selben Namen haben wirst du erstmal garnicht an beide Werte kommen. Danach einfaches WHERE im SQL mit größergleich und kleinergleich. Versteh das Problem nicht.

    Einen Kommentar schreiben:


  • Prodesign
    antwortet
    Also das Script, soll auswählen zwischen 2 Preisen z.b 500€ und 1000€ und es dann in der Datenbank Abfragen und die Werte aus der Tabelle dann ausgeben, die Preise die dann eben zwischen 500€ und 1000€ liegen

    Einen Kommentar schreiben:


  • tkausl
    antwortet
    Das wichtigste Fehlt trotzdem noch, die Frage bzw. das (konkrete) Problem.

    E: Und die [php][/php]-Tags.

    Einen Kommentar schreiben:


  • Prodesign
    antwortet
    Ja Tschuldigung, bin neu im Forum, muss mich noch mit allem Rumschlagen

    Einen Kommentar schreiben:


  • tkausl
    antwortet
    Aha

    Einen Kommentar schreiben:

Lädt...
X