Aller au contenu
WebFrance

Rejoignez WebFrance (Cadeau : Le Guide 2018 pour rentabiliser un site)

Rejoindre WebFrance

Connexion  
plaisirlingerie

comment injecter le fichier csv vers une base de donnée

Messages recommandés

salut a tous,

Je me suis dit pourquoi pas utiliser un script qui insere le fichier csv vers une base de donnée mais il en existe pas quoi j'en ai testé plusieurs mais plusieurs bugs :-(

Si une personne utilise un script qui marche merci beaucoup

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

>> Nouveau : Découvrez la marketplace d'Achat / Vente de Sites !

tu as de la chance, je suis dessus depuis ce weekend

pour commencer, rappatrier le fichier csv:

<?php


function download($file_source, $file_target) {

       $rh = fopen($file_source, 'rb');

       $wh = fopen($file_target, 'wb');

       if ($rh===false || $wh===false) {

// error reading or opening file

           return true;

       }

       while (!feof($rh)) {

           if (fwrite($wh, fread($rh, 1024)) === FALSE) {

                    'Download error: Cannot write to file ('.$file_target.')';

                   return true;

               }

       }

       fclose($rh);

       fclose($wh);

       // No error

       return false;

   }


download('http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=1&current_affid=28071','/www/exemple/feeds/la-boutique-erotique_lingerie_sexy.txt');

download('http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=2&current_affid=28071','/www/exemple/feeds/la-boutique-erotique_bien_etre_fun.txt');

download('http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=3&current_affid=28071','/www/exemple/feeds/la-boutique-erotique_jouets_intimes.txt');

download('http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=4&current_affid=28071','/www/exemple/feeds/la-boutique-erotique_dvds_adultes.txt');

download('http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=5&current_affid=28071','/www/exemple/feeds/la-boutique-erotique_idees_cadeaux.txt');

?>

Modifié par Trismegiste

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

ou sinon que tu peux enregistrer dans un fichier install.php

<?php

//données pour la connexion à la base de données

$db_server = "sql.free.fr"; //adresse du serveur MySQL

$db_name = "xxxxx"; //nom de la base de données

$db_user_login = "xxxxx"; //nom d'utilisateur pour la BD

$db_user_pass = "xxxxx"; //mot de passe pour la BD


function connection_BD()

{

     global $db_server, $db_user_login, $db_user_pass, $db_name;

     //connexion au serveur

     $linkid = @mysql_connect($db_server,$db_user_login,$db_user_pass) or die ("Erreur lors de la connection au serveur MySQL !");

     //selection de la BD

     @mysql_select_db($db_name,$linkid) or die("Impossible de sélectionner la base de données\n<br>\nVoici l'erreur renvoyée par le serveur MySQL :\n<br>\n".mysql_error());

     return $linkid;

}


?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html dir="ltr" lang="<? echo $lang; ?>" xmlns="http://www.w3.org/1999/xhtml" >

<head>

<title>CSV :: Installation & Mise A Jour</title>

</head>

<body>

<?


//connexion a la BD

$lk = connection_BD();


$sql_lingerie_sexy = "

CREATE TABLE IF NOT EXISTS `csv_ds_lingerie_sexy` (

  `id` char(16) character set latin1 collate latin1_general_ci NOT NULL,

  `ref` char(16) character set latin1 collate latin1_general_ci default NULL,

  `pname` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `price` decimal(9,2) default NULL,

  `options` char(16) character set latin1 collate latin1_general_ci default NULL,

  `brand` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shortdesc` text character set latin1 collate latin1_general_ci,

  `desc` text character set latin1 collate latin1_general_ci,

  `proplist` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_1` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_2` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_3` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_min` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_big` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `url` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `oprice` decimal(9,2) default NULL,

  `isnew` tinyint(1) default NULL,

  `isbest` tinyint(1) default NULL,

  `options_ref` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shipf` decimal(9,2) default NULL,

  `dispo` varchar(16) character set latin1 collate latin1_general_ci default NULL,

  `teaser` text character set latin1 collate latin1_general_ci,

  PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1; ";


$sql_bien_etre_fun = "

CREATE TABLE IF NOT EXISTS `csv_ds_bien_etre_fun` (

  `id` char(16) character set latin1 collate latin1_general_ci NOT NULL,

  `ref` char(16) character set latin1 collate latin1_general_ci default NULL,

  `pname` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `price` decimal(9,2) default NULL,

  `options` char(16) character set latin1 collate latin1_general_ci default NULL,

  `brand` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shortdesc` text character set latin1 collate latin1_general_ci,

  `desc` text character set latin1 collate latin1_general_ci,

  `proplist` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_1` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_2` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_3` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_min` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_big` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `url` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `oprice` decimal(9,2) default NULL,

  `isnew` tinyint(1) default NULL,

  `isbest` tinyint(1) default NULL,

  `options_ref` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shipf` decimal(9,2) default NULL,

  `dispo` varchar(16) character set latin1 collate latin1_general_ci default NULL,

  `teaser` text character set latin1 collate latin1_general_ci,

  PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1; ";


$sql_jouets_intimes = "

CREATE TABLE IF NOT EXISTS `csv_ds_jouets_intimes` (

  `id` char(16) character set latin1 collate latin1_general_ci NOT NULL,

  `ref` char(16) character set latin1 collate latin1_general_ci default NULL,

  `pname` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `price` decimal(9,2) default NULL,

  `options` char(16) character set latin1 collate latin1_general_ci default NULL,

  `brand` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shortdesc` text character set latin1 collate latin1_general_ci,

  `desc` text character set latin1 collate latin1_general_ci,

  `proplist` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_1` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_2` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_3` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_min` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_big` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `url` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `oprice` decimal(9,2) default NULL,

  `isnew` tinyint(1) default NULL,

  `isbest` tinyint(1) default NULL,

  `options_ref` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shipf` decimal(9,2) default NULL,

  `dispo` varchar(16) character set latin1 collate latin1_general_ci default NULL,

  `teaser` text character set latin1 collate latin1_general_ci,

  PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1; ";


$sql_dvds_adultes = "

CREATE TABLE IF NOT EXISTS `csv_ds_dvds_adultes` (

  `id` char(16) character set latin1 collate latin1_general_ci NOT NULL,

  `ref` char(16) character set latin1 collate latin1_general_ci default NULL,

  `pname` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `price` decimal(9,2) default NULL,

  `options` char(16) character set latin1 collate latin1_general_ci default NULL,

  `brand` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shortdesc` text character set latin1 collate latin1_general_ci,

  `desc` text character set latin1 collate latin1_general_ci,

  `proplist` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_1` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_2` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_3` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_min` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_big` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `url` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `oprice` decimal(9,2) default NULL,

  `isnew` tinyint(1) default NULL,

  `isbest` tinyint(1) default NULL,

  `options_ref` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shipf` decimal(9,2) default NULL,

  `dispo` varchar(16) character set latin1 collate latin1_general_ci default NULL,

  `teaser` text character set latin1 collate latin1_general_ci,

  PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1; ";


$sql_idees_cadeaux = "

CREATE TABLE IF NOT EXISTS `csv_ds_idees_cadeaux` (

  `id` char(16) character set latin1 collate latin1_general_ci NOT NULL,

  `ref` char(16) character set latin1 collate latin1_general_ci default NULL,

  `pname` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `price` decimal(9,2) default NULL,

  `options` char(16) character set latin1 collate latin1_general_ci default NULL,

  `brand` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shortdesc` text character set latin1 collate latin1_general_ci,

  `desc` text character set latin1 collate latin1_general_ci,

  `proplist` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_1` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_2` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `cat_3` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_min` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `img_big` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `url` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `oprice` decimal(9,2) default NULL,

  `isnew` tinyint(1) default NULL,

  `isbest` tinyint(1) default NULL,

  `options_ref` varchar(255) character set latin1 collate latin1_general_ci default NULL,

  `shipf` decimal(9,2) default NULL,

  `dispo` varchar(16) character set latin1 collate latin1_general_ci default NULL,

  `teaser` text character set latin1 collate latin1_general_ci,

  PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1; ";


     //envoi des requetes

     mysql_query($sql_lingerie_sexy);

          echo "<font color=\"#009900\">La table Lingerie Sexy a été correctement créée</font>\n<br>";

     mysql_query($sql_bien_etre_fun);

          echo "<font color=\"#009900\">La table Bien etre & fun a été correctement créée</font>\n<br>";

     mysql_query($sql_jouets_intimes);

          echo "<font color=\"#009900\">La table Jouets intimes a été correctement créée</font>\n<br>";

     mysql_query($sql_dvds_adultes);

          echo "<font color=\"#009900\">La table Dvds adultes a été correctement créée</font>\n<br>";

     mysql_query($sql_idees_cadeaux);

          echo "<font color=\"#009900\">La table Idees cadeaux a été correctement créée</font>\n<br>";


$requete = 'TRUNCATE TABLE csv_ds_lingerie_sexy';

mysql_query($requete);

$row = 1;

$handle = fopen("http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=1&current_affid=28071", "r");

while (($data = fgetcsv($handle, 5000, "|")) !== FALSE) {

$num = count($data);

$row++;

$query = "INSERT INTO csv_ds_lingerie_sexy VALUES ('" . addslashes($data[0]) ."','". addslashes($data[1]) ."','". addslashes($data[2]) ."','". addslashes($data[3]) ."','". addslashes($data[4]) ."','". addslashes($data[5]) ."','". addslashes($data[6]) ."','". addslashes($data[7]) ."','". addslashes($data[8]) ."','". addslashes($data[9]) ."','". addslashes($data[10]) ."','". addslashes($data[11]) ."','". addslashes($data[12]) ."','". addslashes($data[13]) ."','". addslashes($data[14]) ."','". addslashes($data[15]) ."','". addslashes($data[16]) ."','". addslashes($data[17]) ."','". addslashes($data[18]) ."','". addslashes($data[19]) ."','". addslashes($data[20]) ."','". addslashes($data[21]) ."');";

mysql_query($query);

}

fclose($handle);

echo "<font color=\"#009900\">La table Lingerie sexy a été correctement mise à jour</font>\n<br>";


$requete = 'TRUNCATE TABLE csv_ds_bien_etre_fun';

mysql_query($requete);

$row = 1;

$handle = fopen("http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=2&current_affid=28071", "r");

while (($data = fgetcsv($handle, 5000, "|")) !== FALSE) {

$num = count($data);

$row++;

$query = "INSERT INTO csv_ds_bien_etre_fun VALUES ('" . addslashes($data[0]) ."','". addslashes($data[1]) ."','". addslashes($data[2]) ."','". addslashes($data[3]) ."','". addslashes($data[4]) ."','". addslashes($data[5]) ."','". addslashes($data[6]) ."','". addslashes($data[7]) ."','". addslashes($data[8]) ."','". addslashes($data[9]) ."','". addslashes($data[10]) ."','". addslashes($data[11]) ."','". addslashes($data[12]) ."','". addslashes($data[13]) ."','". addslashes($data[14]) ."','". addslashes($data[15]) ."','". addslashes($data[16]) ."','". addslashes($data[17]) ."','". addslashes($data[18]) ."','". addslashes($data[19]) ."','". addslashes($data[20]) ."','". addslashes($data[21]) ."');";

mysql_query($query);

}

fclose($handle);

echo "<font color=\"#009900\">La table Bien être & fun a été correctement mise à jour</font>\n<br>";


$requete = 'TRUNCATE TABLE csv_ds_jouets_intimes';

mysql_query($requete);

$row = 1;

$handle = fopen("http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=3&current_affid=28071", "r");

while (($data = fgetcsv($handle, 5000, "|")) !== FALSE) {

$num = count($data);

$row++;

$query = "INSERT INTO csv_ds_jouets_intimes VALUES ('" . addslashes($data[0]) ."','". addslashes($data[1]) ."','". addslashes($data[2]) ."','". addslashes($data[3]) ."','". addslashes($data[4]) ."','". addslashes($data[5]) ."','". addslashes($data[6]) ."','". addslashes($data[7]) ."','". addslashes($data[8]) ."','". addslashes($data[9]) ."','". addslashes($data[10]) ."','". addslashes($data[11]) ."','". addslashes($data[12]) ."','". addslashes($data[13]) ."','". addslashes($data[14]) ."','". addslashes($data[15]) ."','". addslashes($data[16]) ."','". addslashes($data[17]) ."','". addslashes($data[18]) ."','". addslashes($data[19]) ."','". addslashes($data[20]) ."','". addslashes($data[21]) ."');";

mysql_query($query);

}

fclose($handle);

echo "<font color=\"#009900\">La table Jouet intimes a été correctement mise à jour</font>\n<br>";


$requete = 'TRUNCATE TABLE csv_ds_dvds_adultes';

mysql_query($requete);

$row = 1;

$handle = fopen("http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=4&current_affid=28071", "r");

while (($data = fgetcsv($handle, 5000, "|")) !== FALSE) {

$num = count($data);

$row++;

$query = "INSERT INTO csv_ds_dvds_adultes VALUES ('" . addslashes($data[0]) ."','". addslashes($data[1]) ."','". addslashes($data[2]) ."','". addslashes($data[3]) ."','". addslashes($data[4]) ."','". addslashes($data[5]) ."','". addslashes($data[6]) ."','". addslashes($data[7]) ."','". addslashes($data[8]) ."','". addslashes($data[9]) ."','". addslashes($data[10]) ."','". addslashes($data[11]) ."','". addslashes($data[12]) ."','". addslashes($data[13]) ."','". addslashes($data[14]) ."','". addslashes($data[15]) ."','". addslashes($data[16]) ."','". addslashes($data[17]) ."','". addslashes($data[18]) ."','". addslashes($data[19]) ."','". addslashes($data[20]) ."','". addslashes($data[21]) ."');";

mysql_query($query);

}

fclose($handle);

echo "<font color=\"#009900\">La table Dvd's adultes a été correctement mise à jour</font>\n<br>";


$requete = 'TRUNCATE TABLE csv_ds_idees_cadeaux';

mysql_query($requete);

$row = 1;

$handle = fopen("http://afflog.dreamstore.ch/prod_csv.asp?logid=&cur=EUR&shop=5&current_affid=28071", "r");

while (($data = fgetcsv($handle, 5000, "|")) !== FALSE) {

$num = count($data);

$row++;

$query = "INSERT INTO csv_ds_idees_cadeaux VALUES ('" . addslashes($data[0]) ."','". addslashes($data[1]) ."','". addslashes($data[2]) ."','". addslashes($data[3]) ."','". addslashes($data[4]) ."','". addslashes($data[5]) ."','". addslashes($data[6]) ."','". addslashes($data[7]) ."','". addslashes($data[8]) ."','". addslashes($data[9]) ."','". addslashes($data[10]) ."','". addslashes($data[11]) ."','". addslashes($data[12]) ."','". addslashes($data[13]) ."','". addslashes($data[14]) ."','". addslashes($data[15]) ."','". addslashes($data[16]) ."','". addslashes($data[17]) ."','". addslashes($data[18]) ."','". addslashes($data[19]) ."','". addslashes($data[20]) ."','". addslashes($data[21]) ."');";

mysql_query($query);

}

fclose($handle);

echo "<font color=\"#009900\">La table Idees cadeaux a été correctement mise à jour</font>\n<br>";


//fin de la connexion

mysql_close($lk);


     ?>

     <br><br>

     L'installation & la  mise à jour sont maintenant terminée !<br>

</body>

</html>

Modifié par Trismegiste

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

merci beaucoup pour le fichier php qui permet l'inportation des csv vers une base sql

Je viens de le tester jai bien indiquer le serveur la base de donnée l'utilisateur de la base et de donnée et le mot de passe il m'indique bien lorsque je le lance

La table Lingerie Sexy a été correctement créée\n

"; mysql_query($sql_bien_etre_fun); echo "La table Bien etre & fun a été correctement créée\n

"; mysql_query($sql_jouets_intimes); echo "La table Jouets intimes a été correctement créée\n

"; mysql_query($sql_dvds_adultes); echo "La table Dvds adultes a été correctement créée\n

"; mysql_query($sql_idees_cadeaux); echo "La table Idees cadeaux a été correctement créée\n

Mais apres avoir verifier sur la base de donnée j'ai rien d'ajouter et si je change les parametre comme un mauvais nom du serveur il me verifie pas et me dit encore des message d'execution ok

jvai voir la page pour voir pourquoi il n'injecte pas les entrées dans la base de donnée

merci encore ;)

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

J'ai enfin pus insérer mon csv dans ma base mais manuellement pour l'instant. par contre, je me rend compte que la tache pour une boutique 100% personnalisé est très lourde. requete sql, php, ...

Vivement que DS créé des tuto pour tout ça et même pourquoi pas des scripts déjà pret

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

Pour te faciliter la tache, tu peux utiliser des frameworks PHP comme CakePhp.

Tu gagneras déjà pas mal de temps sur les requêtes, la pagination, tout ça.

Par contre, la mise en page et les styles te demanderont plusieurs heures de boulot, c'est évident.

Le seul intérêt de travailler avec les CSV, c'est pour intégrer la boutique dans un site qui propose déjà un contenu rédactionnel (blog, CMS...)

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

J'ai commencé avec cakephp mais ça bloque à l'install. Il ne peut pas accéder à la base de données (login incorrect pourtant j'ai tout vérifié)

Ma config de serveur c'est Windows XP est EasyPHP (Apache, My Sql et PHP5)

Et je me rend compte de plus en plus que c'est une tonne de travail pour réalisé mon projet de boutique totalement en csv

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

Pour CakePhp et EasyPhp, désolé je ne peux pas t'aider, je développe tout sous Linux (avec ma propre install d'Apache, MySql et PHP).

Par contre, c'est sûr que le dev de ma boutique m'a facilement demandé 20 heures de travail, etcomme toujours, c'est toujours sur les détails, le fignolage qu'on perd le plus de temps.

Le problème, c'est pas tant le temps que ça demande qui me gêne, si derrière ça marche et que les commandes affluent.

C'est surtout que DS me semblent manquer de rigueur dans leurs développements : le caddie externe est en vrac depuis plusieurs jours, et j'ai du coup un peu l'impression d'avoir développé tout ça pour rien :mad

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

Hello

Je cherche à suprimer une partie d'une ligne dans un fichier csv

exemple de libellé du produit :

Collant grande résille(REF : 320436) Taille : S/M / Couleur : Prune|

je voudrai effacer tout à partir de (REF ... jusque Prune|

quel est le code en php à utiliser ?

merci ;)

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

Il n'est pas possible, avec aucun langage, de supprimer avec une simple commande du texte dans un fichier.

Le plus simple c'est de faire un traitement à l'affichage sur ta page. Tu feras ça en utilisant les méthodes substr et strpos (ou stripos si tu ne veux pas prendre en compte la casse).

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

Ajouter un commentaire :

-

Créer un compte

en 3 secondes

INSCRIPTION

Se connecter

ici

CONNEXION

Connexion  

Partagez cette page :



© WebFrance 2017 - Contact - Annonceurs - Conditions générales

×

Nouveau : Marketplace WebFrance

2.png

Vente de sites internet, domaines, applications...