surotout
Messages postés20Date d'inscriptionvendredi 11 janvier 2008StatutMembreDernière intervention24 juin 2009
-
3 nov. 2008 à 18:18
surotout
Messages postés20Date d'inscriptionvendredi 11 janvier 2008StatutMembreDernière intervention24 juin 2009
-
3 nov. 2008 à 20:19
Bonjour,
soit un programme maj.php
et le create de la base de données
La mise à jour s'effectue
( une zone numerique évolue)
pourtant je ne sais pas relire la table ???
je vous remercie d'essayer de trouver le HIC
maj.php
<?PHP
echo "JE VOUDRAIS METTRE LA TABLE_PARAM DANS LE FICHIER : fichier_test ";
echo " -- JE n arrive pas à mettre à jour ";
echo "
ou JE n arrive pas à relire la table dans le fichier ??? ";
echo "
a) construction de la table à mémorisée i initialisation
";
$host="localhost"; $base="root"; $passe="";
//on effectue la connexion ----------------- */
$voir=@mysql_connect("$host","$base","$passe");
//Selection de la base de données qui porte le meme nom que votre login
$select_base=@mysql_select_db("$base");
echo "b) je lis un enregistrement ";
$numenr=2;
$reqFAM="SELECT * FROM fichier_test WHERE numenr = '$numenr' ";
$resultFAM = mysql_query($reqFAM);
$succFAM=mysql_num_rows($resultFAM);
if ( $succFAM == 1 )
{ $efam=mysql_fetch_array($resultFAM);
echo "
print_r de fichier_test :
"; print_r($efam);
echo "c) je vais modifier la table param _fam ";
$tablePARAM_fam['fam_action'] = "crée" ;
$tablePARAM_fam['fam_derDateConnexion'] = date("Y\-m\-d G:i:s") ;
echo "
print_r de la table :
";print_r($tablePARAM_fam);
echo " IL SEMBLE QUE NOUS AVONS BIEN UNE ARRAY ??? !!!
ET POURTANT
JE N ARRIVE PAS A LIRE memoTABLE
ET IS_ARRAY idem ???";
if (is_array($TESTtablePARAM_fam))
{ echo "
84 efam['memoTABLE'] est un tableau ";
$tablePARAM_fam = $efam['memoTABLE'];
}
else
{ echo"89 NON efam['memoTABLE']
N est PAS une array !??
Où EST l'erreur ???
dans l'update
ou dans la lecture ???????
ou dans la description de la zone memoTABLE ???
OU EST IL IMPOSSIBLE DE METTRE UNE TABLE DANS UN FICHIER ???";
}
if (is_array($efam['texte']))
{ echo "
84 efam['memoTABLE'] est un tableau ";
$tablePARAM_fam = $efam['texte'];
}
else
{ echo"89 NON efam['texte']
N est PAS une array !?? ";
}
}
}
?>
ET LE CREATE
CREATE TABLE `fichier_test` (
`numenr` int(11) NOT NULL auto_increment,
`num1` int(11) NOT NULL,
`nom` varchar(20) collate latin1_general_ci NOT NULL,
`texte` varchar(30) collate latin1_general_ci NOT NULL,
`memoTABLE` longtext collate latin1_general_ci NOT NULL,
PRIMARY KEY (`numenr`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=767 ;
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 3 nov. 2008 à 19:10
Hello,
j'ai pas lu tout ton code (trop long) mais la réponse à la question posée dans le titre de ton thread est : non, pas directement. Il faut linéariser ton tableau.
$sTableauLinearise = serialize($aTableau);
Tu insères $sTableauLinearise dans ta bdd.
Et quand tu le lis, pour récupérer un tableau, tu lis ton enregistrement puis tu délinéarises :
$aTableau = unserialize($sTableauLineariseDansBdd);