[RESOLU] Entrée en bdd sauf la première ligne lu CSV

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Entrée en bdd sauf la première ligne lu CSV

Re: Entrée en bdd sauf la première ligne lu CSV

par @rthur » 25 juin 2018, 23:15

Bonjour,

Initialise une variable (par exemple $num_ligne) à 0 avant ta boucle foreach.
Dans ta boucle tu incrémentes $num_ligne, comme ça tu sauras quelle ligne tu es en train de traiter et donc tu pourras faire une exception pour la 1ère ligne en appelant continue;
https://php.net/continue

Entrée en bdd sauf la première ligne lu CSV

par yoann38 » 25 juin 2018, 18:51

Salut tout le monde.
Voilà je lis un csc puis l'integre en bdd.
J'aimerais pouvoir eviter de rentré la premiere ligne qui correspond au nom de colonne enfait du CSV.
<?php
    include("include/conndb.php");
    include("include/variables.php");
	$fichier = 'bretagne.csv';
	


	$csv = new SplFileObject($fichier);
	$csv->setFlags(SplFileObject::READ_CSV);
	$csv->setCsvControl(';');
	
	// Parcourt du fichier CSV + stockage variables
	foreach($csv as $ligne){
	
	$id_simply_user = '1000';	
	$titre =  addslashes($ligne[1]);
	$phone =  $ligne[2];
	$website =  $ligne[5];
	$email =  $ligne[6];
	$postcode =  $ligne[11];
	$latitude =  $ligne[15];
	$longitude =  $ligne[16];
	$city =  addslashes(ucfirst(strtolower($ligne[13])));

	
		
   		// Insertion
        $req = $bdd->prepare("INSERT INTO `loisirs` (id_simply_user,titre,phone,email,city,postcode,latitude,longitude,website) VALUES ('$id_simply_user','$titre','$phone','$email','$city','$postcode','$latitude','$longitude','$website')");
        $req->execute(array(
             		  'id_simply_user'=>$id_simply_user,
                      'titre'=>$titre,
					  'phone'=>$phone,
					  'email'=>$email,
					  'city'=>$city,
					  'postcode'=>$postcode,
			 		  'website'=>$website
                      )) or die('Problème lors de l\'insertion');
            
	}
        
?> 
Avez vous une idée ?