Nach Providerwechsel: mysql-query mit klasse geht nicht mehr

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

  • Nach Providerwechsel: mysql-query mit klasse geht nicht mehr

    Hallo ihr Lieben,
    hab da mal wieder ein Problem, das meinen Kopf zum Rauchen bringt:

    Ich hab da eine schöne Klasse, die hab ich unten angehängt. Ich hab einen db-connect , der war ursprünglich für php5 gedacht, jedoch habe ich einen neuen provider, der benutzt php 4.3.

    Hab da vor dem connect noch ein paar Abfragen


    PHP-Code:
    if ($table == "kauf") { 
                    if (!(
    $art == "alle")) {
                        
    $my_db_query "SELECT * FROM $table WHERE art = '$art' AND preis > $preis_bottom AND preis < $preis_top ORDER BY preis DESC";
                        } else {
                            
    $my_db_query "SELECT * FROM $table WHERE preis > $preis_bottom AND preis < $preis_top ORDER BY preis DESC";
                        }
            } else {
                
    $my_db_query "SELECT * FROM $table WHERE preis > $preis_bottom AND preis < $preis_top ORDER BY preis DESC";
            } 
    und nach dieser Abfrage ich den Query mit

    PHP-Code:
    $mysql->query($my_db_query); 
    ab. Wenn ich mit mysql_error() debugge, sagt er mir: Table 'datenbank.table' doesn´t exist. Was das heisst, ist
    mir schon klar, allerdings GIBT es diese Table........

    Weiss jemand rat? Danke schonmal!

    Asisito







    PHP-Code:
    <?php

    class db_handle {
        
        var 
    $connection NULL;
        var 
    $result NULL;
        var 
    $nrows NULL;
        var 
    $arr_keys  NULL;
        var 
    $arr_values  NULL;
        
        var 
    $off_forward  NULL;
        var 
    $off_backward  NULL;
        var 
    $page_limit  NULL
        
        
        
    // FUNKTION ZUM HERSTELLEN DER DB-VERBINDUNG    
        
    function connect ($host$database$user$pass) {
            
    // echo "connecting...<br>"; //checkfunction
            
            
    $this->connection mysql_connect(
            
    $host,
            
    $user,
            
    $pass,
            
    TRUE
            
    );
            
            if (!
    $this->connection) { 
                die(
    'Verbindung nicht möglich: ' mysql_error()
                );
            }
            
            
    mysql_select_db($database$this->connection);
            
        }
        
        
        
    // FUNKTION ZUM TRENNEN DER VERBINDUNG
        
    function disconnect() {
            
    // echo "disconnecting... "; // checkfunction
            
    if(is_resource($this->connection)) {
                
    mysql_close($this->connection);
            }
        }
        
        
        
    // FUNKTION FUER DEN QUERY
        
    function query($query) {
            
    // echo "query...<br>"; // checkfunction
            
    if (is_resource($this->connection)) {
                if (
    is_resource($this->result)) {
                    
    mysql_free_result($this->result);
                }
                
            
    $this->result mysql_query(
            
    $query,
            
    $this->connection
            
    ) OR die(mysql_error());
            
            }
        }
        
        
        
    // FUNKTION NUMROWS
        
    function numRows() {
            
    // echo "checking numRows...<br>"; // checkfunction
            
    if (is_resource($this->result)) {     
                
    $nrows mysql_num_rows($this->result);
                return 
    $nrows;
                      
            }      
        }
        

        
        
    // FUNKTION FETCH ROWS
        
    function fetchRow() {    
            
    // to check: echo "fetchRow now<br>"; // checkfunction
            
    if (is_resource($this->result)) {      
                
    $row mysql_fetch_assoc($this->result);       
                if (
    is_array($row)) {        
                    return 
    $row;
                    } else {        
                        return 
    FALSE;      
                }    
            }  
        }
        
        
        
        
    # BLAETTERN-FUNKTION
        
    function browseDbResults($from$limit$total) {
            
            
    //erst mal die anzahl der zeilen checken, durch aufruf der numrows-Funktion
            
            //Offset setzen, um vorzugehen 
            
    $offset_forward $from $limit;
            
            
    //Wenn der Offset groesser ist, als die Zeilenanzahl, dann kann nicht geblaettert werden
            
    if ( ($limit $from) >= $total ) {
                
    $offset_forward $offset_forward $limit;
            }
            
            
    // Offset setzen, um zurückzugehen 
            
    $offset_backward $from $limit;
            
            
    // Wenn Offset kleiner ist als 0 ist Offset gleich 0
            
    if($offset_backward 0) {
            
    $offset_backward 0;
            }
            
            
    // public variablen werden belegt
            
    $this->page_limit $limit;
            
    $this->off_forward $offset_forward;
            
    $this->off_backward $offset_backward;
            
        }
        
     




    ?>

  • #2
    Was steht denn oben in $table drin? Etwa DeineDatenbank.DeineTabelle?

    Kommentar


    • #3
      Hallo,
      da steht nur der Table-Name drin, in meinem Fall "mieter".

      Gruss
      Zuletzt geändert von Asito; 13.03.2006, 18:29.

      Kommentar


      • #4
        Re: Nach Providerwechsel: mysql-query mit klasse geht nicht mehr

        Original geschrieben von Asito
        PHP-Code:
        $mysql->query($my_db_query); 
        PHP-Code:
        echo $my_db_query
        und posten.

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar

        Lädt...
        X