2010-06-18 5 views
0

J'ai un tableau retour d'une application flash créée dans Flash Builder 4.PHP Notice: Undefined property: stdClass:

J'ai une configuration de service que les requêtes et apporte des données depuis la base de données avec succès, mais le script Update génère les erreurs de propriété Undefined.

J'apprends toujours à la fois PHP et Flash Builder, et je ne comprends pas vraiment ce que font les commandes $ this->.

Si quelqu'un peut suggérer où ce script va mal, il est simplement généré par Flash Builder et ce n'est pas quelque chose que j'ai moi-même développé, j'apprécierais?

Aussi si quelqu'un peut expliquer $ this-> à moi ce serait génial aussi? Je les ai déjà vues, mais j'ai vu des scripts faire la même chose que de ne pas les utiliser, alors est-ce une vieille façon de faire les choses?

Vraiment apprécier toute entrée que n'importe qui peut donner.

Mise à jour pour le code PHP complet.

Erreurs générées.

[18 juin 2010 13:01:37] PHP Notice: Undefined property: stdClass :: inst_code de $ dans C: \ wamp \ www \ Coradia-175105-debug services \ \ tbltrustservice.php en ligne 48

[18 juin 2010 13:01:37] Avis de PHP: Undefined property: stdClass :: trust_name de $ dans C: \ wamp \ www \ Coradia-175105-debug services \ \ tbltrustservice.php en ligne 48

[18 juin 2010 13:01:38] PHP Notice: Undefined property: stdClass :: trust_code de $ dans C: \ wamp \ www \ Coradia-175105-debug services \ \ tbltrustservice.php en ligne 48

[18-Juin-2010 13:01:38] Note PHP: Propriété indéfinie: stdClass :: trust_key de $ dans C: \ wamp \ www \ Coradia-175105-debug services \ \ tbltrustservice.php en ligne 48

 <?php 

//reroute errors to get rid of that annoying CHANNEL DISCONNECTED message. 
ini_set('error_log', 'errorLog.txt'); 
ini_set('html_errors', '0'); 
ini_set('display_errors', '0'); 
ini_set('log_errors', '1'); 

class tbltrustservice { 

    public $connection; 

    public function connect() { 
      $this->connection = mysqli_connect("ahoey-1:3306", "<Username Removed For StackOverflow>", "<Password Removed for StackOverflow>", "enabmodules") or die(mysqli_connect_error()); 
    } 

    public function getAllItems($search) { 
       $this->connect(); 

       if ($search=="") { 
       $sql = "SELECT * FROM tbltrust"; 
       } else { 
       $sql = 'SELECT * FROM tbltrust WHERE trust_name LIKE \'%'.mysql_escape_string($search).'%\' OR trust_code LIKE \''.mysql_escape_string($search).'%\' OR inst_code LIKE \'%'.mysql_escape_string($search).'%\''; 
       } 

       $result = mysqli_query($this->connection, $sql) or die('Query failed: ' . mysqli_error($this->connection)); 

       $rows = array(); 
       while ($row = mysqli_fetch_object($result)) { 
        $rows[] = $row; 
       } 

       mysqli_free_result($result); 
       mysqli_close($this->connection); 

       return $rows; 
    } 



    public function updateItem($item) { 
     // TODO Auto-generated method stub 
     // Update an existing record in the database and return the item 

     // Sample code \' 

       $this->connect(); 
       $sql = "UPDATE tbltrust SET inst_code = '$item->inst_code', trust_name = '$item->trust_name', trust_code = '$item->trust_code' WHERE trust_key = '$item->trust_key'"; 

       mysqli_query($this->connection, $sql) or die('Query failed: ' . mysqli_error($this->connection)); 

       mysqli_close($this->connection); 

    } 


/* 
    public function updateItem($item) { 

     $stmt = mysqli_prepare($this->connection, "UPDATE $this->tablename SET trust_code=?, trust_name=?, inst_code=? WHERE trust_key=?");  
     $this->throwExceptionOnError(); 

     mysqli_stmt_bind_param($stmt, 'sssi', $item->trust_code, $item->trust_name, $item->inst_code, $item->trust_key);   
     $this->throwExceptionOnError(); 

     mysqli_stmt_execute($stmt);  
     $this->throwExceptionOnError(); 

     mysqli_stmt_free_result($stmt);  
     mysqli_close($this->connection); 
    } 
*/ 
    public function getItem($itemID) { 
     // TODO Auto-generated method stub 
     // Return a single record from the database and return the item 

     // Sample code 
     /* 
       $this->connect(); 
       $itemID = mysqli_real_escape_string($this->connection, $itemID); 
       $sql = "SELECT * FROM books where itemID=$itemID"; 

       $result = mysqli_query($this->connection, $sql) or die('Query failed: ' . mysqli_error($this->connection)); 

       $rows = array(); 
       while ($row = mysqli_fetch_object($result)) { 
        $rows[] = $row; 
       } 

       mysqli_free_result($result); 
       mysqli_close($this->connection); 

       return $rows; 
     */ 
    } 

    public function createItem($item) { 
     // TODO Auto-generated method stub 
     // Insert a new record in the database using the parameter and return the item 

     // Sample code 
     /* 
       $this->connect(); 
       $sql = "INSERT INTO books (title, au_first_name, au_last_name) 
       VALUES ('$item->title','$item->au_first_name','$item->au_last_name')"; 

       mysqli_query($this->connection, $sql) or die('Query failed: ' . mysqli_error($this->connection)); 

       $autoid= mysqli_insert_id($this->connection); 
       mysqli_close($this->connection); 

       return $autoid; 
     */ 
    } 

/* 
public function updateItem($item) { 

     $stmt = mysqli_prepare($this->connection, "UPDATE tbltrust SET trust_code=?, trust_name=?, inst_code=? WHERE trust_key=?");  
     $this->throwExceptionOnError(); 

     mysqli_stmt_bind_param($stmt, 'sssi', $item->trust_code, $item->trust_name, $item->inst_code, $item->trust_key);   
     $this->throwExceptionOnError(); 

     mysqli_stmt_execute($stmt);  
     $this->throwExceptionOnError(); 

     mysqli_stmt_free_result($stmt);  
     mysqli_close($this->connection); 
    } */ 

    public function deleteItem($itemID) { 
     // TODO Auto-generated method stub 
     // Delete a record in the database 

     // Sample code 
     /* 
       $this->connect(); 
       $itemID = mysqli_real_escape_string($this->connection, $itemID); 
       $sql = "DELETE FROM books WHERE itemID = $itemID"; 

       mysqli_query($this->connection, $sql) or die('Query failed: ' . mysqli_error($this->connection)); 

       mysqli_close($this->connection); 
     */ 
    } 

    public function count() { 
     // TODO Auto-generated method stub 
     // Return the number of items in your array of records 

     // Sample code 
     /* 
       $this->connect(); 
       $sql = "SELECT * FROM books"; 

       $result = mysqli_query($this->connection, $sql) or die('Query failed: ' . mysqli_error($this->connection)); 
       $rec_count = mysqli_num_rows($result); 

       mysqli_free_result($result); 
       mysqli_close($this->connection); 

       return $rec_count; 
     */ 
    } 

    public function getItems_paged($startIndex, $numItems) { 
     // TODO Auto-generated method stub 
     // Return a page of records as an array from the database for this startIndex 

     // Sample code 
     /* 
       $this->connect(); 
       $startIndex = mysqli_real_escape_string($this->connection, $startIndex); 
       $numItems = mysqli_real_escape_string($this->connection, $numItems); 
       $sql = "SELECT * FROM books LIMIT $startIndex, $numItems"; 

       $result = mysqli_query($this->connection, $sql) or die('Query failed: ' . mysqli_error($this->connection)); 

       $rows = array(); 
       while ($row = mysqli_fetch_object($result)) { 
        $rows[] = $row; 
       } 

       mysqli_free_result($result); 
       mysqli_close($this->connection); 

       return $rows; 
     */ 
    } 


    } 

?> 
+0

Pouvez-vous ajouter les messages d'erreur exacts et les lignes dans lesquelles ils se trouvent? –

+2

Apprenez la langue dans laquelle vous codez dès que possible. Programmation par coïncidence nécessitera beaucoup plus d'efforts que de le faire correctement. –

Répondre

3

Oh my :)

$ c'est le "nom" de l'objet actuel dans lequel vous êtes. Je crois que vous venez de copier cette fonction à l'intérieur d'un objet plus grand, collé dans un endroit aléatoire, et il a cessé de fonctionner, car il lui manque des parties essentielles ...

Pour utiliser ce script, vous avez besoin du code source complet. Vous devriez essayer d'apprendre quelques bases de PHP, sinon vous aurez du mal à les comprendre vous-même.

+1

Oui, je suis d'accord avec tout le monde que la programmation par accident n'est pas la solution. J'ai posté le code PHP complet de la page, et les erreurs que je reçois. Ce code PHP a été généré par Flash Builder lui-même, plutôt que par moi-même. Cheers. –

Questions connexes