[PHP] MySql Befehl funzt net! :(

Dieses Thema im Forum "Webentwicklung" wurde erstellt von GaYlORd, 27. Oktober 2006 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 27. Oktober 2006
    MySql Befehl funzt net!

    Hoi!

    Ich möchte aus einer MySQL Tabelle Werte aufrufen, die 2 kriterien erfüllen müssen.
    Die Kriterien sind variablen und die variablen werden beide angezeigt, aber in der Abfrage
    gehts dann nimmer!^^

    Mal die Abfrage:

    PHP:
    <? php
        $query    
    =     "SELECT * FROM `kommentar` WHERE `Name` = ' { $gett } ' AND `Bildname` = ' { $datensatz [ "Bildname" ]} ' ORDER BY `ID` DESC" ;
        
    $result  =     mysql_query $query  );
        if ( ! 
    $result  )
        {    
            die(
    "ALAAAAAAAARM! Da geht was net!^^" );
        }
        
        
    $anzahl2  =     mysql_num_rows $result2  );
                
    // Schleife zum Ausgeben der einzelnen Datensätze in Tabellen-Reihen
                
    for (  $i = 1 $i  <=  $anzahl $i ++)
                {
                
                    
    $datensatz2     =     mysql_fetch_array $result  );
    ?>
    So, ich bekomm meine Fehlermeldung "ALAAAAAAAARM! Da geht was net!^^".
    d.h. die Abfrage als mein $query schein leer zu sein?!

    $gett wird per GET übergeben und abgerufen (geht!)
    $datensatz["Bildname"] wird auch in einer vorigen whileschleife ausgegeben!!

    gruß
    gl

    €dit:
    Fehler muss an
    PHP:
    $result  =     mysql_query $query  );
    liegen, weil er mir da nix ausgibt, aber bei echo $query gibt er mir den richtigen aus!!!
     
  2. 27. Oktober 2006
    AW: MySql Befehl funzt net!

    die genaue fehlermeldung wär ma sinnvoll... PHP: mysql_error - Manual
     
  3. 27. Oktober 2006
    AW: MySql Befehl funzt net!

    mach mal "echo $query;" und sag was er dir ausgibt
    oder lass mal die ` weg, weil bei mir gings bis jez ohne

    Code:
    $query = "SELECT * FROM kommentar WHERE Name = '$gett' AND Bildname = '$datensatz['Bildname']' ORDER BY ID DESC";
     
  4. 27. Oktober 2006
    AW: MySql Befehl funzt net!

    ich würd sie dranlassen
    aber die {} müssen weg
    die brauchst du nur in der Smarty-Template engine, in nem richtigen PHP script nicht
    dafür würde ich evtl. noch ".$var." schreiben
    also
    PHP:
    $query  "SELECT * FROM `kommentar` WHERE `Name` = '" . $gett . "' AND `Bildname` = '" . $datensatz [ 'Bildname' ]. "' ORDER BY `ID` DESC" ;
     
  5. 28. Oktober 2006
    AW: MySql Befehl funzt net!

    Bei mysql-Befehlen müssen Variable auch immer in ' ' stehen.
    Also
    PHP:
    <? php
    $query    
    =     "SELECT * FROM `kommentar` WHERE `Name` = ' $gett ' AND `Bildname` = ' $datensatz [ " Bildname " ] ' ORDER BY `ID` DESC" ;
        
    $result  =     mysql_query $query  );
        if ( ! 
    $result  )
        {    
            die(
    "ALAAAAAAAARM! Da geht was net!^^" );
        }
        
        
    $anzahl2  =     mysql_num_rows $result2  );
                
    // Schleife zum Ausgeben der einzelnen Datensätze in Tabellen-Reihen
                
    for (  $i = 1 $i  <=  $anzahl $i ++)
                {
                
                    
    $datensatz2     =     mysql_fetch_array $result  );
    ?> 
     
  6. 28. Oktober 2006
    AW: MySql Befehl funzt net!

    tun sie bei mir doch auch
    sieht man evtl nicht weil ich code-tags benutzt habe und dadurch keine bunte farben angezeigt werden ^^
    die query variable wurde mit doppelten anführungszeichen angefangen " und ich habe nur an den entsprechenden stellen den string beendet durch noch ein " dann mit nem punkt die variable dran gehängt, und dann mit ." den nächsten teil-string drangehangen
    ist meiner meinung nach besser
    fakt ist aber dass er smarty und php durcheinandergeworfen hat ^^
     
  7. 28. Oktober 2006
    AW: MySql Befehl funzt net!

    Sie muessen nur, wenn es Zeichenketten sind in ' stehen!

    Das ist sowieso Muell:
    PHP:
    $query     =     "SELECT * FROM `kommentar` WHERE `Name` = ' $gett ' AND `Bildname` = ' $datensatz [ " Bildname " ] ' ORDER BY `ID` DESC" ;
    $datensatz[bildname] wenn schon.

    Mach aus dem ganzen mal:
    PHP:
    SELECT  FROM kommentar WHERE Name  '$gett'  AND  Bildname  '$datensatz[Bildname]'  ORDER BY ID DESC
     
  8. 28. Oktober 2006
    AW: MySql Befehl funzt net!

    Gib dir eifnach mit mysql_error() die Fehlermeldung aus dann siehste wo es hackt. Vielleicht existiert die tabelle/spalte nicht ?!

    FlowFLo
     
  9. 28. Oktober 2006
    AW: MySql Befehl funzt net!

    Sers!

    Die Fehlermeldung:
    Zeile 155 ist:
    PHP:
    $anzahl  =     mysql_num_rows $result  );
    Wenn ich das $query ausgebe, wird es richtig angezeigt.
    Wenn ich das angezeigte $query in phpmyadmin eingebe, bekomm ich dich richtigen Dantensätze!!

    und die Alternativen zum schreiben der Variablen haben nichts geändert!!

    gruß

    gl
     
  10. 28. Oktober 2006
    AW: MySql Befehl funzt net!

    Ach verdammt!^^

    Ich bin so doof. Hatte vorher die mysql verbindung getrennt und net wieder geöffnet!^^

    Ok, geht jetzt.

    gruß und dank an alle.

    gl
     
  11. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.