Questions PHP
Fermé
ghaouar
Messages postés
174
Date d'inscription
jeudi 10 avril 2008
Statut
Membre
Dernière intervention
22 avril 2012
-
9 avril 2009 à 01:23
scriptiz Messages postés 1424 Date d'inscription dimanche 21 décembre 2008 Statut Membre Dernière intervention 14 septembre 2023 - 31 mai 2009 à 19:01
scriptiz Messages postés 1424 Date d'inscription dimanche 21 décembre 2008 Statut Membre Dernière intervention 14 septembre 2023 - 31 mai 2009 à 19:01
A voir également:
- Questions PHP
- Easy php - Télécharger - Divers Web & Internet
- Php?id=1 - Forum PHP
- \R php ✓ - Forum PHP
- Php if plusieurs conditions ✓ - Forum PHP
- Echo image php ✓ - Forum PHP
5 réponses
scriptiz
Messages postés
1424
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 septembre 2023
425
9 avril 2009 à 07:59
9 avril 2009 à 07:59
Bonjour,
Je ne suis pas certaine à 100%, mais le XLS est un format binaire et donc tu ne peut pas le lire en PHP à moins qu'il existe une lib spéciale pour ça mais je ne la connais pas.
Sinon tu peux utiliser les CSV qui s'ouvrent avec Excel et là tu les ouvres comme un fichier texte et tu délimite juste les valeurs par des ; et les lignes par des sauts de lignes.
Je ne suis pas certaine à 100%, mais le XLS est un format binaire et donc tu ne peut pas le lire en PHP à moins qu'il existe une lib spéciale pour ça mais je ne la connais pas.
Sinon tu peux utiliser les CSV qui s'ouvrent avec Excel et là tu les ouvres comme un fichier texte et tu délimite juste les valeurs par des ; et les lignes par des sauts de lignes.
ghaouar
Messages postés
174
Date d'inscription
jeudi 10 avril 2008
Statut
Membre
Dernière intervention
22 avril 2012
9 avril 2009 à 12:18
9 avril 2009 à 12:18
Bonjour
alors comment je peut enregistrer ou convertir un fichiers Excel xls en fichiers cvs ?
et merci
alors comment je peut enregistrer ou convertir un fichiers Excel xls en fichiers cvs ?
et merci
scriptiz
Messages postés
1424
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 septembre 2023
425
11 avril 2009 à 12:03
11 avril 2009 à 12:03
Voilà un script que j'avais trouvé à l'époque, je l'avais un peu modifier pour pouvoir distinguer les méthodes afin d'en faire différents usages.
En gros après il te suffit de l'inclure puis de faire appel à la méthode mysql_to_excel($query); en lui passant en paramètre le résultat d'une requête MySQL.
Sinon si je me rappelle bien les nom des colonnes ne marchait plus très bien, faudrait un peu revoir ça mais bon le principe y est, il te reste à adapter ça selon tes besoins :)
En gros après il te suffit de l'inclure puis de faire appel à la méthode mysql_to_excel($query); en lui passant en paramètre le résultat d'une requête MySQL.
Sinon si je me rappelle bien les nom des colonnes ne marchait plus très bien, faudrait un peu revoir ça mais bon le principe y est, il te reste à adapter ça selon tes besoins :)
<?php /** * Export MySQL data to an Excel spreadsheet * @param $query A MySQL Query * Usage : * $sql_query = mysql_query("SELECT * FROM examples"); * mysql_to_excel($sql_query); */ function mysql_to_excel($query) { $export = $query; $count = mysql_num_fields($export); /************ Extract field names and write them to the $header variable /***********/ $header = excel_header($query); /*********** Extract all data, format it, and assign to the $data variable /**********/ $data = excel_append($query); /************ Set the default message for zero records /************/ if ($data == "") { $data = "\n(0) Records Found!\n"; } /************ Set the automatic download section /************/ excel_compose($header, $data); } function excel_header($query) { /************* Build query, call it, and find the number of fields /*************/ $export = $query; $count = mysql_num_fields($export); /************ Extract field names and write them to the $header variable /***********/ for ($i = 0; $i < $count; $i++) { $header .= mysql_field_name($export, $i).";"; } return $header; } function excel_append($query) { /************* Build query, call it, and find the number of fields /*************/ $export = $query; $count = mysql_num_fields($export); /************ Extract field names and write them to the $header variable /***********/ for ($i = 0; $i < $count; $i++) { $header .= mysql_field_name($export, $i).";"; } /*********** Extract all data, format it, and assign to the $data variable /**********/ while($row = mysql_fetch_row($export)) { $line = ''; foreach($row as $value) { if ((!isset($value)) OR ($value == "")) { $value = ";"; } else { $value = str_replace('"', '""', $value); $value = '"' . $value . '"' . ";"; } $line .= $value; } $data .= trim($line)."\n"; } $data = str_replace("\r", "", $data); return $data; } function excel_compose($header, $data) { /************ Set the automatic download section /************/ header("Content-type: application/octet-stream"); header("Content-Disposition: attachment; filename=spreadsheet.csv"); //header("Content-Disposition: attachment; filename=".$_GET['t']."_".date("Ymd").".csv"); header("Pragma: no-cache"); header("Expires: 0"); print "$header\n$data"; } ?>
ghaouar
Messages postés
174
Date d'inscription
jeudi 10 avril 2008
Statut
Membre
Dernière intervention
22 avril 2012
16 mai 2009 à 19:52
16 mai 2009 à 19:52
Salut
si tu a une idée sur la sécurité de chemin d'accès qui se trouve dans barre d'URL.
Mois je fais mon application avec EasyPHP, si j'exécute le page PHP je trouve dans le bar d'URL le chemin d'accès ou se trouve mon application exactement.
Par exemple dans la barre d'URL il ya : http://127.0.0.1/IPEIGafsa/Verif_Administrateur.php , si je supprime une partie cette URL, devient (http://127.0.0.1/IPEIGafsa/ ) je peux accéder au Dossier IPEIGafsa.
Alors comment faire pour que l'accès au dossier à partir de chemin d'accès devienne impossible ?
Merci
si tu a une idée sur la sécurité de chemin d'accès qui se trouve dans barre d'URL.
Mois je fais mon application avec EasyPHP, si j'exécute le page PHP je trouve dans le bar d'URL le chemin d'accès ou se trouve mon application exactement.
Par exemple dans la barre d'URL il ya : http://127.0.0.1/IPEIGafsa/Verif_Administrateur.php , si je supprime une partie cette URL, devient (http://127.0.0.1/IPEIGafsa/ ) je peux accéder au Dossier IPEIGafsa.
Alors comment faire pour que l'accès au dossier à partir de chemin d'accès devienne impossible ?
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
scriptiz
Messages postés
1424
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 septembre 2023
425
31 mai 2009 à 19:01
31 mai 2009 à 19:01
Tu as plusieurs choix :
Le premier, le fichier .htaccess
Tu crée un fichier que tu appelle .htaccess dans le répertoire dont tu veux interdire l'accès (attention, ne pas faire ça pour des dossiers d'images, de css, ou de js, juste pour les dossier contenant des fichiers PHP) et tu met dedans :
Attention le fichier ne dois pas avoir d'extension (pas .htaccess.txt ça marchera pas).
Plus d'infos sur les htaccess : https://www.commentcamarche.net/contents/7-apache-les-fichiers-htaccess
Deuxième choix :
Tu crée un fichier index.html dans le dossier et dedans tu ne met rien.
Il existe aussi une autre solution si tu peux configurer apache, qui consiste à ne pas lister le contenu d'un répertoire s'il ne trouve pas les fichiers par défaut affichés (tels que index.html, index.php et autres si tu les as ajoutés).
Le premier, le fichier .htaccess
Tu crée un fichier que tu appelle .htaccess dans le répertoire dont tu veux interdire l'accès (attention, ne pas faire ça pour des dossiers d'images, de css, ou de js, juste pour les dossier contenant des fichiers PHP) et tu met dedans :
Deny from all
Attention le fichier ne dois pas avoir d'extension (pas .htaccess.txt ça marchera pas).
Plus d'infos sur les htaccess : https://www.commentcamarche.net/contents/7-apache-les-fichiers-htaccess
Deuxième choix :
Tu crée un fichier index.html dans le dossier et dedans tu ne met rien.
Il existe aussi une autre solution si tu peux configurer apache, qui consiste à ne pas lister le contenu d'un répertoire s'il ne trouve pas les fichiers par défaut affichés (tels que index.html, index.php et autres si tu les as ajoutés).