kostenloser Webspace werbefrei: lima-city


Wiedermal ein Script Problem

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    r***a

    AUch wenn es mich tierisch ank**** euch immer zu bel?stigen

    aber folgende fehlermeldung wird ausgegeben

    You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ' ort = 'wetro' ORDER BY flaeche

    <?php
    error_reporting(E_ALL);
    include"dbconnect.php";
    $ortsuche = $HTTP_GET_VARS["ort"];
    $i=0;
    $mietpreis=0;
    $mietpreis_wrg=0;
    $einraum=0;
    $zweiraum=0;
    $dreiraum=0;
    $vierraum=0;
    $fuenfraum=0;
    $wohnung = "SELECT
    wohnungsart
    FROM
    mietobjekte";
    $sql_eins = "SELECT
    ort,
    strasse,
    flaeche,
    kaltmiete_m2,
    kaltmiete_ges,
    wohnungsart,
    lage_whg
    FROM
    mietobjekte
    WHERE
    wohnungsart = '1',
    ort = '$ortsuche'
    ORDER BY
    flaeche DESC";

    $result_eins = mysql_query($sql_eins) OR die (mysql_error());
    $rw = mysql_query($wohnung) OR die (mysql_error());
    while($row = mysql_fetch_assoc($rw))
    {
    if ($row['wohnungsart']=="1")
    {
    $einraum=1;
    }
    if ($row['wohnungsart']=="2")
    {
    $zweiraum=1;
    }
    if ($row['wohnungsart']=="3")
    {
    $dreiraum=1;
    }
    if ($row['wohnungsart']=="4")
    {
    $vierraum=1;
    }
    if ($row['wohnungsart']=="5")
    {
    $fuenfraum=1;
    }
    }
    mysql_free_result($rw);

    IF ($einraum=="1")
    {
    echo
    "
    1 - Raum - Wohnungen
    <table border=0 cellspacing=2>
    ";
    while($row = mysql_fetch_assoc($result_eins))
    {
    if ($i++ % 2 != 0)
    {
    $bgcolor='#CACACA';
    }
    else
    {
    $bgcolor='#F2F2F2';
    }
    if ($row['kaltmiete_m2']=="")
    {
    $mietpreis=$row['kaltmiete_ges'];
    $mietpreis_wrg=" ? + NK";
    }
    else
    {
    $mietpreis=$row['kaltmiete_m2'];
    $mietpreis_wrg=" ? / m? + NK";
    }
    echo "
    <tr>
    <td bgcolor=".$bgcolor." width='101' height='33'>&nbsp;&nbsp;".$row['ort']."</td>
    <td bgcolor=".$bgcolor." width='131' height='33'>&nbsp;&nbsp;".$row['strasse']."</td>
    <td bgcolor=".$bgcolor." width='108' height='33' align='center'>".$row['flaeche']." m?</td>
    <td bgcolor=".$bgcolor." width='131' height='33' align='center'>".$mietpreis.$mietpreis_wrg."</td>
    <td bgcolor=".$bgcolor." width='95' height='33'>&nbsp;&nbsp;".$row['lage_whg']."</td>
    </tr>";
    }
    mysql_free_result($result_eins);
    echo "</table>";
    }//if einraum
    ?>


    grmpf da seh ich aber keinen Fehler ;-(
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Probier mal das:

    "FROM mietobjekte WHERE wohnungsart LIKE '1', ort LIKE '$ortsuche' ORDER BY flaeche DESC";

    Ansonsten: versuchs mal, nur eine definition zu nehmen:
    "FROM mietobjekte WHERE ort LIKE '$ortsuche' ORDER BY flaeche DESC";
  4. Autor dieses Themas

    r***a

    komisch mit einer abfrage gehts in beiden varianten ...

    aber ich muss doch auch 2 abfragen machen k?nnen
  5. schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Dann w?rd ich halt zwei Abfragen machen:
    Zuerst werden alle rausgesucht, bei denen "wohnungsart" gleich "1" ist und dann, in der n?chsten abfrage, wo "ort" gleich "$ortsuche" ist...

    Ich bin mir nicht sicher, ob man zwei abfragen gleichzeitig machen kann...

    Das Problem bei dir war das "=". Das muss "LIKE" sein...
  6. 0******a

    schrotti12 schrieb:
    Das Problem bei dir war das '='. Das muss 'LIKE' sein...

    Stimmt nicht. Das like braucht man nur bei Strings mit Platzhaltern (also %). Bei MySQL reicht, im Gegensatz zu z.B. Oracle, beim einfachen Stringvergleich das = aus. Auch Gross-/Kleinschreibung wird bei der Benutzung von = nicht beachtet.

    Das Problem ist, dass zwei Bedingungen benutzt werden und da ein Komma zwischensteht. Es sollte aber ein "and" oder ein "or" dazwischen stehen (je nachdem, was du da genau machen willst).
    Beispiel:
    falsch: select name, telefon from leute where status = "single", haarfarbe = "blond";
    richtig: select name, telefon from leute where status = "single" and haarfarbe = "blond";
    Statt and kann man dann halt auch "or" benutzen (was in diesem Fall meiner Meinung nach keinen Sinn machen w?rde *g*).
  7. Autor dieses Themas

    r***a

    wundersch?n es funktioniert...ich bedanke mich bei euch beiden!!!
  8. schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Oh mein Gott, ich bin so schlecht *heul*...
    Aber nichts desto trotz...
    Bin froh, dass ich helfen konnte!

    @ 0-checka:
    Das = ist das, was mir halt als erstes aufgefallen ist, deswegen hab ichs gesagt.
    Ich verwende MySQL-Befehle halt nich in der "Grundform"...
    Aber ich bin drauf und dran, mich da einzuarbeiten!

    Iss halt doch ein recht umfangreiches Thema

    MfG
    schrotti12
  9. 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!