IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Problème d'insertion de valeur


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de yohan0262
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 159
    Par défaut Problème d'insertion de valeur
    Bonjour,
    Je souhaite récupérer un certain nombre de fichiers pour les stocker dans ma table "automate".
    Je vous explique ma démarche. Je liste les différents répertoire jusqu'à ce que j'arrive au bout de l'arborescence, c'est à dire aux fichiers. Je récupère ces fichiers et les stocks dans un tableau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
     
    <?php
     
    function liste($chemin)
    {
     
    $tab = array();
    	// Accès au repertoire
    $repertoire=opendir($chemin);
     
    	// Initialise la boucle
    $sortie_de_la_boucle=false; 
     
    // Boucle réccupérant toutes les entrées contenues dans le répertoire
    while ($entree=readdir($repertoire))
    	{
    		if (($entree!=".")&&($entree!="..")&&($entree!="Filiales")&&($entree!="Sources")&&($entree!="Fournisseurs")&&($entree!="Methodes")&&($entree!="Autres")&&($entree!="Architecture_Reseau")&&($entree!="SERAP")&&($entree!="grafcet chronos"))
    		{
    			if (is_dir($chemin.$entree))
    			{
    				//$chemin .= "/".$entree;
    				$chemin2 = $chemin.$entree. "/";
    				liste($chemin2);
    			}
    			else
    			{
    				//echo '<a href =\''.$chemin.$entree.'\' target=\'_self\'>'.$chemin.$entree.'</a><br />';
    				$tab[]=$chemin.$entree;
    			}
    		}
    	}
    $tableau=array();	
    foreach($tab as $value) 
    	{
     
    	$tableau = explode("/", $value);
    //j'effectue ceci car certaine arborescence comporte un répertoire de plus que les autres	
    	if(count($tableau)>5)
    	{
    		for($i=6;$i<count($tableau);$i++)
    		{	
    		$tableau[5]=$tableau[5].'/'.$tableau[$i];
    		}
    	}
    	//echo "<pre>".print_r($tableau)."</pre>";
     
    	List ($serveur, $secteur, $ue, $batiment,$source, $fichier) = $tableau;
     
    		$req = "SELECT id_instal FROM nomination WHERE INSTR('".addSlashes($fichier)."', type_instal) > 0 OR INSTR('".addSlashes($fichier)."', type_instal2) > 0";	
     
    			$result = mysql_query($req); //or die (mysql_error());
    			$valeur4 = mysql_fetch_array($result);
     
    	    $var = "SELECT id_secteur FROM secteur WHERE nom_secteur = '".$secteur."'";
     
    			$result = mysql_query($var) or die ("<br>Erreur");
    			$valeur1 = mysql_fetch_array($result);
     
    		$get = "SELECT id_ue FROM ue WHERE nom_ue = '".$ue."'";
     
    			$result = mysql_query($get);
    			$valeur2 = mysql_fetch_array($result);
     
    		$requete = "SELECT id_bat FROM batiment WHERE nom_bat = '".$batiment."'";	
     
    			$result = mysql_query($requete);
    			$valeur3 = mysql_fetch_array($result);
     
     
    			$queri = "INSERT INTO automate (id_instal, id_ue, id_bat, id_secteur, pdf) SELECT '".$valeur4['id_instal'] ."','".$valeur2['id_ue'] ."','".$valeur3['id_bat'] ."','".$valeur1['id_secteur'] ."','".$fichier."' FROM automate WHERE not exists (SELECT * FROM automate WHERE pdf ='".$fichier."')";
    			mysql_query($queri); //or die (mysql_error()); 
     
    	}
     
    	//fermeture du repertoire
        closedir($repertoire);
    }
    ?>
    Mon problème se trouve sur la requete ci dessus "insert into". En effectuant celle-ci je souhaite récupérer les fichiers qui ne sont pas encore présent dans ma table afin de les incorporer dedans. Si le fichier existe déja dans ma table alors on ne fais rien. Le problème est que quand je lance l'application, la requête m'incorpore des fichiers certes, qui n'étaient pas présent avant (donc c'est positif sur ce point) mais il me les rentre au moins 200 fois et je ne vois pas pourquoi ?!
    J'espère que quelqu'un sera m'aider s'il vous plaît

  2. #2
    Membre confirmé Avatar de yohan0262
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 159
    Par défaut
    Mon post est si peu interessant que ca ?

Discussions similaires

  1. problème d'insertion de multiple valeur a un champ
    Par ezelbatchen dans le forum Débuter
    Réponses: 2
    Dernier message: 07/06/2013, 17h59
  2. Réponses: 3
    Dernier message: 22/01/2013, 16h23
  3. Problème avec un Insert et valeur par default
    Par jaffael dans le forum Bases de données
    Réponses: 6
    Dernier message: 17/12/2007, 17h33
  4. Réponses: 4
    Dernier message: 09/06/2006, 07h38
  5. [LDAP] Problème lors d'insertion de valeur vide
    Par navis84 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 26/04/2006, 14h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo