2013-08-11 4 views
-2

Je reçois l'erreur suivante dans mon Codeigintor installer que je ne peux pas sembler résoudreArray pour la conversion en chaîne CodeIgniter

Severity: Notice 

Message: Array to string conversion 

Filename: models/upload_model.php 

Line Number: 69 

Voici mon code:

foreach($data as $field){ 
    $query = $this->db->get_where('Ushers', array('Date' => $field['Date'])); 
    $result_array = $query->row_array(); 
    if(empty($result_array)){ 
    $query = $this->db->get_where('Ushers_teams', array('Team' => $field['Team'])); 
    $ushers = $query->result_array(); 
    $doublebooking = FALSE; 
    foreach($ushers as $usher){ 
     $columns = $this->db->list_fields('worship'); 
     $sql = "SELECT * FROM worship WHERE worship.Date LIKE '".$field['Date']."%'"; 
     foreach($columns as $column){ 
     $sql .= " OR worship.".(string)$column." = '".(string)$usher."'"; 
    } 
    $result = $this->db->query($sql); 
    $usher = $result->result_array(); 
    if(!isEmpty($usher)) $doublebooking = TRUE; 
    } 

    if(!$doublebooking){ 
    $this->db->insert('ushers', $field); 
    print("Succesfully uploaded roster for week: ".$field['Date']); 
    }else{ 
    print("Some ushers are already rostered onto the worship team on ".$field['Date']); 
    } 
}else{ 
    print("The is already a ushers roster for ".$field['Date']."."); 
    print("<br>"); 
} 

Je suis au courant ce n'est pas la meilleure solution au problème, c'était le dernier recours pour obtenir le même problème. L'erreur est actuellement sur la ligne contenant

$sql .= " OR worship.".(string)$column." = '".(string)$usher."'"; 

Son probablement un problème simple, mais je l'ai été frappé ma tête pendant 5 ou 6 heures maintenant.

+0

Veuillez formater votre code. – Toto

+0

désolé à ce sujet, j'ai enlevé la formation en essayant de l'arrêter pour me dire que j'avais code non formaté .. j'ai oublié de le remettre après. – GRhin

+0

Dump les deux variables '$ column' et' $ usher' avec 'var_dump()' pour voir si elles sont déjà des chaînes ou non. Le simple fait de les convertir en chaînes n'est pas la meilleure solution s'il s'agit de tableaux. – Sven

Répondre

2

$usher est un tableau, je pense que vous trouverez. $ushers est un tableau de tableaux. $usher sera un tableau avec un champ pour chaque colonne de la table ushers. Vous voulez probablement $usher['name'] ou $usher['id'] quelque chose comme ça. Impossible de dire exactement quoi de l'info.