begin process at 2012 05 31 03:48:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

mettre une Array dans une zone de base de données est-ce autorisé ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

mettre une Array dans une zone de base de données est-ce autorisé ?

lundi 3 novembre 2008 à 18:18:36 | mettre une Array dans une zone de base de données est-ce autorisé ?

surotout

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 "<p>  -- JE n arrive pas à mettre à jour ";
echo "<br> ou JE n arrive pas à relire la table dans le fichier ??? <p>";

echo "<br>a) construction de la table à mémorisée  i initialisation <br>";

        $tablePARAM_fam      =  array(
              'fam_action    '        => "init action"   
            , 'fam_derDateConnexion'    => "init-date"
                                    ) ;
print_r($tablePARAM_fam);

$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 "<p>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 "<br> print_r de fichier_test : <br>"; print_r($efam);

    echo "<p>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 "<br> print_r de la table : <br>";print_r($tablePARAM_fam);
   
    $num1 = $efam['num1'] + 1;
    echo "<br> num1 : $efam[num1] devient : $num1";
   
    echo "<br>42 je vais mettre à jour l'enegistrement $numenr    <br>";
    $requfam="UPDATE  fichier_test
         SET     num1        = '$num1'                  , 
                texte        = '$tablePARAM_fam'        , 
                memoTABLE    = '$tablePARAM_fam'   
         WHERE     numenr =  '$numenr' ";
    echo "<br>requfam : $requfam ";
    $resultufam = mysql_query($requfam);
    echo "<br>resultufam : $resultufam <br>";
    if     ($resultufam != 1 )
        {    $resultuam = mysql_query($requfam) 
                or die('requete =>'.$requfam.'
                    error->'.mysql_error());
        }
      

    echo "<br>d) je vais RELIRE l'enregistrement $numenr pour voir si il a été modifié ";
    $reqFAM="SELECT * FROM fichier_test
    WHERE numenr =  '$numenr'  "; 
    $resultFAM = mysql_query($reqFAM);
        echo "<br> resultFAM ...; $resultFAM ";
    $succFAM=mysql_num_rows($resultFAM);
        echo "<br>  succFAM ...; $succFAM ";
    if     ( $succFAM == 1 )
        {    $efam=mysql_fetch_array($resultFAM);

        echo "<p>66 num1 a bien été mis à jour     : "; print_r($efam['num1']);
        echo "<p>67 texte _ _ _ _  est : "; print_r($efam['texte']);
        echo "<br>68     memoTABLE est : "; print_r($efam['memoTABLE']);
        echo "<br>68  var_dump : ";         var_dump($efam['memoTABLE']);
        echo "<p>72 print_r( efam['texte']) : ";
        print_r($efam['texte']); // DONNE ARRAY ???

        echo "<br>72 print_r( efam['memoTABLE']) : ";
        print_r($efam['memoTABLE']); // DONNE ARRAY ???

        $TESTtablePARAM_fam = $efam['memoTABLE'];
   
        echo "<br> print_r(TESTtablePARAM_fam) : ";
        print_r($TESTtablePARAM_fam); 

        echo "<br> TESTtablePARAM_fam : $TESTtablePARAM_fam ";
        echo "<br> gettype(TESTtablePARAM_fam) : ";
        echo "<br> gettype($TESTtablePARAM_fam) ";
       
        echo "    <p>IL SEMBLE QUE NOUS AVONS BIEN UNE ARRAY ??? !!!
                <BR> ET POURTANT
                <BR> JE N ARRIVE PAS A LIRE memoTABLE
                <BR> ET IS_ARRAY idem ???";
   
            if     (is_array($TESTtablePARAM_fam))
            {     echo "<br>84 efam['memoTABLE'] est un tableau ";
                $tablePARAM_fam = $efam['memoTABLE'];
            }
            else
            {    echo"<p>89 NON efam['memoTABLE']
                N est PAS une array !??
                <p>  Où EST l'erreur ???
                <br> dans l'update
                <br> ou dans la lecture ???????
                <br> ou dans la description de la zone memoTABLE ???
                <p>  OU EST IL IMPOSSIBLE DE METTRE UNE TABLE DANS UN FICHIER ???";
            }
            if     (is_array($efam['texte']))
            {     echo "<br>84 efam['memoTABLE'] est un tableau ";
                $tablePARAM_fam = $efam['texte'];
            }
            else
            {    echo"<p>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 ;

--
-- Contenu de la table `fichier_test`
--

INSERT INTO `fichier_test` (`numenr`, `num1`, `nom`, `texte`, `memoTABLE`) VALUES
(1, 100, '', '', 'mmm'),
(2, 200, '', 'Array', 'Array');

lundi 3 novembre 2008 à 19:10:59 | Re : mettre une Array dans une zone de base de données est-ce autorisé ?

malalam

Administrateur CodeS-SourceS
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);
lundi 3 novembre 2008 à 19:51:08 | Re : mettre une Array dans une zone de base de données est-ce autorisé ?

surotout

comme c'est simple quand on sait


parfait
lundi 3 novembre 2008 à 19:59:53 | Re : mettre une Array dans une zone de base de données est-ce autorisé ?

malalam

Administrateur CodeS-SourceS
Réponse acceptée !
Si cela résoud ton problème, merci de cliquer sur "réponse acceptée", cela aidera d'éventuelles personnes confrontées au même problème que toi.
lundi 3 novembre 2008 à 20:19:05 | Re : mettre une Array dans une zone de base de données est-ce autorisé ?

surotout

et Merci encore


Cette discussion est classée dans : array, echo, fam, efam, memotable


Répondre à ce message

Sujets en rapport avec ce message

AAAAAAAA mysql_fetch_array ca marche comment? [ par Tiriel ] Lorsque j'execute ce script: (Pas besoin de preciser que je suis débutant vu le script ) include("ID.htaccess\sql.php"); $connect=mysq passage parametres php [ par Puec ] Bonjour, Je débute en php, et je rencontre un problème.J'ai un formulaire qui contient 2 listes déroulantes contenant dont chacun des items provient d problème valeur de variable !! [ par fredo35m ] J'ai un soucis pour récupérer les valeurs de variables et là je ne comprends vraiment pas pourquoi !!!voici une partie du programme :function update_b Problème avec mysql_fetch_array() [ par gssk ] Bonjour   en fait je voudrais récuperer d valeurs à partir d'un id seclectioné ds une liste, l'erreur est sur le mysql_fetch_array (en rouge) est ce Problème avec un tableau en array [ par Kaeru ] Bonjour,j'ai un tableau qui fonctionne avec un array et je voudrai y incorporer un systeme qui cherche dans une table un résultat. En fonction de ce r pb d'affichage avec mysql_fetch_array [ par rocknroll2 ] Slt à tousj'ai 1 blême d'affichage après un select dont voici le code:mysql_select_db($database, $connectbase);$reponse = mysql_query($query_reponse, Recherche sur des tableaux [ par guisx00 ] Bonjour,Voila en ce moment j'essai de faire un ptite gallerie à partir d'une bddPour cree les miniatures ajoute les images etc c'est bon sa marcheMais Array SQL [ par OneHacker ] Bonjour, je sais pas comment afficher un tableau SQL :while($data = mysql_fetch_array($req))     {    // on affiche les informations de l'enregistreme menu deroulant [ par jphilippev ] bonjourje crée un menu déroulant :  echo ""; $sql = mysql_query("SELECT gros FROM log where id")or die(mysql_error());  $tbl_array = array();$Gros = m aide [ par lioyan ] salut à tous, je suis débutant en php alors pour ma formation j'ai trouvé un exo sur le net qui dit:    Faites un script qui affiche la liste des étud


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales