Impossible de ressortir mes champs dans mysql

Résolu
SpaceHam Messages postés 78 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 22 octobre 2015 - 17 juin 2011 à 16:18
SpaceHam Messages postés 78 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 22 octobre 2015 - 17 juin 2011 à 20:43
Est-ce normal que je ne puisse pas sortir les informations des champs voulu dans mysql malgré le fait que le Array se forme et qu'il contienne cette information.

Voici une méthode de ma persistance qui marche numéro un afin de sortir
un usager tout simplement
----------------------------
public function getUser($username)
{
include_once('User.class.php');
$user = new User;
$req = "SELECT * FROM inv_user WHERE
username = '" . $username . "'";
$this->connect();
$res = mysqli_query($this->conn, $req);
if($row = mysqli_fetch_array($res))
{
$user->setFirstName($row['fname']);
$user->setLastName($row['lname']);
$user->setEmail($row['email']);
$user->setUsername($row['username']);
$user->setPassword($row['password']);
$user->setAccess($row['access']);
$user->setConnect($row['connect']);

return $user;
}
else
return NIL;
}

----------------------------


Voici la méthode de ma Persistance que j'ai créé mais qui me cause problème.
----------------------------
public function getComputer($serial)
{
include_once('Computer.class.php');
$pc = new Computer;
$req = "SELECT * FROM inv_computer WHERE
sn = '" . $serial . "'";

$this->connect();

$res = mysqli_query($this->conn, $req);
if($row = mysqli_fetch_array($res))
{
echo '***';
print_r($row);
var_dump($row);
echo '

***';
echo'
[' . $row["sn"] . ']';
echo'
[' . $row['sn'] . ']';
echo'
[' . $row[0] . ']';

$pc->setSerialNumber($row[0]);
$pc->setName($row[1]);
$pc->setNameAddress($row[2]);
$pc->setManufacturer($row[3]);
$pc->setModel($row[4]);
$pc->setProject($row[5]);
$pc->setDomain($row[6]);
$pc->setWorkgroup($row[7]);
$pc->setOSName($row[8]);
$pc->setOSKey($row[9]);
$pc->setServer($row[10]);
$pc->setWorkable($row[11]);
$pc->setInventory($row[12]);
$pc->setProduction($row[13]);
$pc->setFormation($row[14]);

return $pc;
}
else
return NIL;
}
----------------------------


Et voici le résultat sortie tel que demandé sur mon browser IE
----------------------------
Array
(
[0] => 01234567
[SN] => 01234567
[1] => thet01-tm-v118
[NAME] => thet01-tm-v118
[2] => Thetford
[NAMEADDRESS] => Thetford
[3] => HP
[MANUFACTURER] => HP
[4] => Brokdleg
[MODEL] => Brokdleg
[5] => Vidéotron
[PROJECT] => Vidéotron
[6] => gexel.lan
[DOMAIN] => gexel.lan
[7] =>
[WORKGROUP] =>
[8] => Windows XP Pro SP3 FR
[OSNAME] => Windows XP Pro SP3 FR
[9] =>
[OSKEY] =>
[10] =>
[SERVER] =>
[11] =>
[WORKABLE] =>
[12] =>
[INVENTORY] =>
[13] => 
[PRODUCTION] => 
[14] =>
[FORMATION] =>
)
array(30) {
[0]=>
string(8) "sn12345"
["SN"]=>
string(8) "sn12345"
[1]=>
string(14) "mon-pc"
["NAME"]=>
string(14) "mon-pc"
[2]=>
string(8) "Ma ville"
["NAMEADDRESS"]=>
string(8) "Ma ville"
[3]=>
string(2) "IBM"
["MANUFACTURER"]=>
string(2) "IBM"
[4]=>
string(8) "Thinkcentre"
["MODEL"]=>
string(8) "Thinkcentre"
[5]=>
string(9) "Secret"
["PROJECT"]=>
string(9) "Secret"
[6]=>
string(9) "domaine.com"
["DOMAIN"]=>
string(9) "domaine.com"
[7]=>
string(0) ""
["WORKGROUP"]=>
string(0) ""
[8]=>
string(21) "Windows XP Pro SP3 FR"
["OSNAME"]=>
string(21) "Windows XP Pro SP3 FR"
[9]=>
string(0) ""
["OSKEY"]=>
string(0) ""
[10]=>
string(1) ""
["SERVER"]=>
string(1) ""
[11]=>
string(1) ""
["WORKABLE"]=>
string(1) ""
[12]=>
string(1) ""
["INVENTORY"]=>
string(1) ""
[13]=>
string(1) ""
["PRODUCTION"]=>
string(1) ""
[14]=>
string(1) ""
["FORMATION"]=>
string(1) ""
}

*** [] [] [01234567]
----------------------------

Quelqu'un aurait une idée de ce qui pourrais 'clocher'???? Il me semble que j'ai pratiquement fait du copier-coller et que j'ai juste modifier pour en sortir tout simplement la bonne table et les bon noms de champ.

Merci d'essayer de m'aider puisqu'il me semble que le tout est parfait mais le résultat ne veut pas suivre.

SpaceHamAgent

1 réponse

SpaceHam Messages postés 78 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 22 octobre 2015
17 juin 2011 à 20:43
Je crois bien avoir trouvé le pourquoi.

Lorsque j'ai fait ma table SQL

CREATE TABLE ma_table(
sn varchar(30),
........
model var(30) not null, //Ne jamais mettre de not null puisque je ne pouvais pas en sortir mes champs. Je l,ai tout simplement supprimé et maintenant je peux employé dans ma persistance $row['model'] et il me sors la bonne information.
);


Si jamais il y avait d'autre personne alors c'est ma réponse :)

SpaceHamAgent
3
Rejoignez-nous