According this code in the model Etablissements_commanditaires_m :
public function ajouter()
{
... code ...
$recuperer = $this->db->get($this->table)->result_array();
$recuperer['quantite_lignes'] = $this->db->count_all_results($this->table);
$recuperer['number'] = 5;
$recuperer['text'] = 'blabla';
The last line $recuperer['text'] = 'blabla'; makes error.
But the line $recuperer['number'] = 5; do not makes error.
The coming errors are : Illegal string offset or Undefined offset: 0
And this code in the controller :
$etablissements_commanditaires = $this->etablissements_commanditaires_m->ajouter();
$html['quantite_lignes'] = $etablissements_commanditaires['quantite_lignes'];
... code ...
$i=0;
foreach ($etablissements_commanditaires as $enregistrement)
{
echo 'aa'.$enregistrement['id_etablissement_payeur'].'bb'; // Makes the first error.
...
}
The errors are :
Severity: Warning
Message: Illegal string offset 'id_etablissement_payeur'
Filename: ETABLISSEMENTS_COMMANDITAIRES/etablissements_commanditaires_c.php
Line Number: 240
A PHP Error was encountered
Severity: Warning
Message: Illegal string offset 'id_etablissement_payeur'
Filename: ETABLISSEMENTS_COMMANDITAIRES/etablissements_commanditaires_c.php
Line Number: 243
A PHP Error was encountered
Severity: Warning
Message: Illegal string offset 'id_etablissement_payeur'
Filename: ETABLISSEMENTS_COMMANDITAIRES/etablissements_commanditaires_c.php
Line Number: 254
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 0
Filename: ETABLISSEMENTS_COMMANDITAIRES/etablissements_commanditaires_c.php
Line Number: 260
How can I set a string to $recuperer['text'], without having error ?
An other case looking to be the same problem, and then wondering if my CodeIgniter/PHP is ok ?
PHP => PHP Version 5.5.9-1ubuntu4.3
CodeIgniter => 2.2.0
$this->db->select('id_etablissement_payeur, nom');
$this->db->where('id_etablissement_payeur',$enregistrement['id_etablissement_payeur']);
$get_RESULTAT_etablissements_payeurs = $this->db->get('etablissements_payeurs');
$result_etablissements_payeurs = $get_RESULTAT_etablissements_payeurs->result_array();
echo '';
print_r($result_etablissements_payeurs);
echo '
';
echo $result_etablissements_payeurs[0]['id_etablissement_payeur'] . ' - '; //Line Number: 279
echo $result_etablissements_payeurs[0]['nom']; //Line Number: 280
The print_r gives the good result with offset 0 :
Array
(
[0] => Array
(
[id_etablissement_payeur] => 4
[nom] => Etablissement payeur N° 4
)
)
4 - Etablissement payeur N° 4Array
(
[0] => Array
(
[id_etablissement_payeur] => 1
[nom] => Etablissement payeur N° 1
)
)
1 - Etablissement payeur N° 1Array
(
[0] => Array
(
[id_etablissement_payeur] => 1
[nom] => Etablissement payeur N° 1
)
)
etc.
But the 2 echo makes an Undefined offset: 0 error :
Severity: Notice
Message: Undefined offset: 0
Filename: ETABLISSEMENTS_COMMANDITAIRES/etablissements_commanditaires_c.php
Line Number: 279
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 0
Filename: ETABLISSEMENTS_COMMANDITAIRES/etablissements_commanditaires_c.php
Line Number: 280
This is very strange, because offset 0 does exist, or I missed something somewhere.
Any idea ?