begin process at 2012 05 28 22:49:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Erreur fgetcsv


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

Erreur fgetcsv

jeudi 28 avril 2011 à 13:10:03 | Erreur fgetcsv

senateur17

Bonjour,
Je veux importer dans la base les données du fichier excel
Voici mes codes:
function importCSV($FILE,$id_user){
$ids="";
$ERRORS = array();
$ARRAY = array();
$CHAMPS = array("P2P REFERENCE","FAMILY","SUPPLIER CODE","SUPPLIER REFERENCE","NAME FILE PICTURE","PRODUCT DESCRIPTION","STONE SIZE","COLORS","SUPPLIER COMMENT","SPECIFIC ELEMENTS","PRODUCT WEIGHT","METAL WEIGHT","SILVER PRICE","STONE PRICE","RHODIUM PRICE","OTHER ELEMENT PRICE","LABOR PRICE","TOTAL FOB","CURRENCY (¤ ,$)","PUBLIC PRICE","EAN","INITIAL STOCK");
if( is_string($error = testFILE($FILE,"csv"))) array_push($ERRORS,$error);
else{
if ( $FILETMP = fopen($FILE["tmp_name"],"r")) {
$i=0;
$p=0;
$np=0;
$pp=0;
$npp=0;
$t=0;
while (($ARRAY[] = fgetcsv($FILETMP,1024,";"))!== FALSE){
//Teste si champs CSV sont dans la base
$testFields = array_diff($ARRAY[0],$CHAMPS);
for($p=0;$p<sizeof($testFields);$p++){
echo $testFields[$p];
}
foreach($testFields as $k => $v)
if(trim($v) == '')
unset($testFields[$k]);

if(!empty($testFields)) { array_push($ERRORS,"The fields of the CSV file did not match. diff=".nl2br(print_r($testFields,true))); break; }else{

}
if(count($ERRORS)==0){

$ligne = $ARRAY[$i];
for($l=0;$l<count($CHAMPS);$l++){
$ligne["$l"] = ( isset($ligne["$l"]) ) ? $ligne["$l"] : Null;
${"champs$l"} = htmlentities($ligne["$l"], ENT_QUOTES);
}

Quand j'ajoute un champ à $CHAMPS
Voilà un message d'erreurs:

Notice: Undefined offset: 0 in C:\wamp\www\p2p\importMANU.php on line 52
A la ligne où il y a echo $testFields[$p]

Pouvez -vous m'aider?
Merci d'avance
jeudi 28 avril 2011 à 13:40:55 | Re : Erreur fgetcsv

senateur17

Voici les codes avec balise:
Code PHP :
function importCSV($FILE,$id_user){ 
	$ids="";
	$ERRORS = array();
	$ARRAY = array();
	$CHAMPS = array("P2P REFERENCE","FAMILY","SUPPLIER CODE","SUPPLIER REFERENCE","NAME FILE PICTURE","PRODUCT DESCRIPTION","STONE SIZE","COLORS","SUPPLIER COMMENT","SPECIFIC ELEMENTS","PRODUCT WEIGHT","METAL WEIGHT","SILVER PRICE","STONE PRICE","RHODIUM PRICE","OTHER ELEMENT PRICE","LABOR PRICE","TOTAL FOB","CURRENCY (¤ ,$)","PUBLIC PRICE","EAN","INITIAL STOCK");
	if( is_string($error = testFILE($FILE,"csv")))  array_push($ERRORS,$error);
	else{ 
		if ( $FILETMP = fopen($FILE["tmp_name"],"r")) { 
			$i=0; 
			$p=0;
			$np=0;
			$pp=0;
			$npp=0;	
			while (($ARRAY[] = fgetcsv($FILETMP,1024,";"))!== FALSE){ 
				//Teste si champs CSV sont dans la base 
				$testFields = array_diff($ARRAY[0],$CHAMPS);
				foreach($testFields as $k => $v)
					if(trim($v) == '')
						unset($testFields[$k]);
				if(!empty($testFields)) { array_push($ERRORS,"The fields of the CSV file did not match. diff=".nl2br(print_r($testFields,true))); break; }
				if(count($ERRORS)==0){
					$ligne = $ARRAY[$i];
					for($l=0;$l<count($CHAMPS);$l++){
						$ligne["$l"] = ( isset($ligne["$l"]) ) ? $ligne["$l"] : Null;
						${"champs$l"} = htmlentities($ligne["$l"], ENT_QUOTES); 
					}



Cette discussion est classée dans : ligne, file, champs, array, price


Répondre à ce message

Sujets en rapport avec ce message

Ordre inverse dans un tableau [ par Dridrizz ] Voila, j'ai un formulaire qui alimente un .txt de haut en bas (normal quoi) et j'aimerai faire apparaitre les lignes du .txt en comencant par la derni Moteur de recherche blork engine [ par flopad ] Bonjour, je suis un pauvre petit débutant en php, j'ai récupéré le moteur de recherche blork engine et j'essaie avec difficultés de l'intégrer à mon i Affichage répertoire [ par tipexx94 ] Bonjour, j'ai ce c supprimer une ligne d'une matrice [ par fadoua123 ] bonjourje suis bloquee sur un probleme, j ai deux matrice ou le premeir colone et la premiere ligne il y a des lettres et les autres des chiffre, je v passage à la ligne [ par cas ] Je possède un formulaire, dans lequel j'ai plusieurs champs texte "textearea". Quand j'appuie sur valider, je renseigne un fichier texte avec le conte Une gallerie d images désobeissante. Pourquoi? [ par Lunasoft ] Salut! J ai écrit mes codes afin de faire une importation des photos. en un mot, je voulais créer une gallerie d images. Curieursement, quant j appel Problème avec code d'upload [ par Koppa ] Bonjour je crée présentement un site avec une possibilté de partager des fichiers mais voilà je n'arrive pas à faire fonctionné un des codes: upload.p Recherches approfondies dans un tableau associatif [ par DelChris ] Bonjour à tous. <p class="MsoNormal" Session et statut [ par kopierreko ] Bonjour,Je travaille avec les sessions pour mon site afin de montrer les utilisateurs en ligne.Donc lors de la connexion, j'applique une UPDATE sur la Modifier un champs de type SET [ par xactise ] Bonjour a tous,je vous expose mon problème après avoir regarder sur internet je n'ai rien trouver d'interessant.Je souhaiterai pouvoir rajouter des va


Nos sponsors


Sondage...

Comparez les prix

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,530 sec (3)

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