Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1028 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  APPLICATION PHP/SQL

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

APPLICATION PHP/SQL

n°2135832
lp77
Posté le 11-04-2012 à 23:08:00  profilanswer
 

Bonsoir, je dois réaliser une application permettant de gérer les BDD.
En fait, on a un disque réseau dans lequel on a des BDD définitives (remplies donc).
On voudrait créer une appli qui demande à l'utilisateur le nom de la BDD surlaquelle il souhaite travailler, l'appli doit ensuite se connecter au disque réseau pour voir si elle est présente, si oui (on affiche les tables remplies d'un côté et l'utilisateur est invité à les modifier d'un autre, ensuite on fera une sauvegarde de la BDD sur le disque réseau) si la BDD n'est pas trouvé (on crée une BDD vierge en lançant un script, puis on invite l'utilisateur à remplir les tables demandés). Je pense qu'il faudrait aussi demander l'IP à l'utilisateur afin de créer la BDD sur le PC même dans ce cas ...
Je voulais faire ça sur un intranet en HTML/PHP/SQL, pensez vous que c'est faisable ? Je pense que la difficulté majeure sera d'utiliser les scripts SQL des BDD présents dans le NAS .... Si vous avez des idées sur ce projet n'hésitez pas, merci ;)

mood
Publicité
Posté le 11-04-2012 à 23:08:00  profilanswer
 

n°2135871
rufo
Pas me confondre avec Lycos!
Posté le 12-04-2012 à 09:26:29  profilanswer
 

Oui, c'est faisable. Par contre, perds pas de vue que le sgbd utilisé doit pouvoir accéder aux bases (par ex, qu'elles soient toutes dans son répertoire contenant les BD ou que des alias ODBC ou équivalent existent et pointent sur les BD).
 
EX : si ton sgbd est Mysql, c'est pas parce que sur un PC ou autre machine, t'as dans des répertoires des BD au format Mysql que le sgbd de ton appli va pouvoir les ouvrir. Pour ça, il faudra que les BD se trouvent toutes soit dans le répertoire /data/ du serveur Mysql, soit qu'il existe des liens ODBC ou équivalent (je pense, sous Linux, à des montages NFS qui montraient les répertoires des BD dans le répertoire /data/ du sgbd) qui relient les BD au sgbd Mysql.
 
Et si tu veux que ton appli puisse ouvrir différents types de BD (Oracle, Mssql, mysql, postgres...), c'est possible, mais ça veut dire qu'il faudra installer (pas forcément sur le même serveur) autant de types de sgbd que de types de BD. Ca veut dire aussi que ton code PHP devra être capable de se connecter à ces différents types de sgbd (soit tu utilises une couche d'abstraction, soit tu codes les différents codes pour chaque sgbd).
 
Pour le coup de l'IP, j'ai pas trop compris. A mois que t'aies plusieurs serveurs, tu ne pourras pas créer des BD n'importe où (par ex, pas possible en local d'un poste utilisateur). Tu ne pourras écrire que sur le serveur où tourne le sgbd, voire l'appli php, si tu fais créer temporairement le BD sur le sgbd puis que tu fasses un export de la BD et que t'écrives le fichier résultant sur le serveur de l'appli. Si y'a des montages NFS en R/W sur le serveur où tourne l'appli php, tu pourras faire la même manip (création sur le sgbd, export, écriture du fichier).
 
Pour que ça soit écrit sur le poste utilisateur, il faudra faire un export de la BD puis proposer le fichier en téléchargement.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2135878
lp77
Posté le 12-04-2012 à 09:49:42  profilanswer
 

En fait, les BD livrées avec nos systèmes sont déposer sur le NAS (Lacie) avant la livraison (tous sont des fichiers SQL ...).
On voudrait créer une interface (via un site WEB intranet par exemple) qui demande à l'utilisateur de taper le nom d'une BDD (si le nom est trouvé dans le NAS) alors on propose la modification des valeurs des champs, puis on enrengistre la nouvelle BDD sans écraser l'ancienne sur le NAS (je pense que la meilleure solution sera de créer la BDD en local via le script puis apporter les modifications dessus). Si elle n'est pas trouvé, on crée une BDD vierge dans laquelle on rentrera les valeurs. La BDD sera crée sur le PC utilisateur (ils ont déjà MySQL installé ...), ensuite on fera une sauvegarde sur le NAS.
Merci.

n°2135910
rufo
Pas me confondre avec Lycos!
Posté le 12-04-2012 à 12:17:07  profilanswer
 

Mais ton appli, elle est stockée où? Parce qu'il faut que les fichiers SQL stockés sur le NAS puissent être transférés sur le PC utilisateur et être importés dans Mysql (instance locale au poste utilisateur) et que le transfert inverse soit possible aussi. Si ton appli web est centralisée, ça suppose que le serveur hébergeant ton appli ait accès en écriture à tous les postes utilisateurs concernés et au NAS. Ca me paraît bien compliqué et dangereux :/
 
L'autre solution serait que chaque PC utilisateur ait une instance de ton appli en local (un wamp portable par ex) mais là, tu perds l'avantage de l'appli web centralisée (à chaque évol de l'appli, faudra la distribuer aux PC utilisateurs), pas top...
 
Je vois pas pourquoi tu pourrais pas faire tout sur une seule machine (appli web + mysql qui chargera les BD demandées et se chargera de les créer si elles n'existent pas).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2135920
lp77
Posté le 12-04-2012 à 13:37:27  profilanswer
 

L'appli peut être stockée sur chaque PC (ils y en a que 4) ou bien sur un des 4 ... (la bonne solution ?) Pour executer les scripts il faut forcément que les scripts des BDD présents sur le NAS soient importés dans le MySQL de chaque PC ? (ça ne saura donc pas automatiser ?) Puis pour la sauvegarde des BDD sur le NAS, c'est une exigence du service ...
Merci;

n°2135949
rufo
Pas me confondre avec Lycos!
Posté le 12-04-2012 à 15:33:05  profilanswer
 

sur l'un des 4, ça serait mieux.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2136007
MEI
|DarthPingoo(tm)|
Posté le 12-04-2012 à 17:36:08  profilanswer
 

rufo a écrit :

Mais ton appli, elle est stockée où? Parce qu'il faut que les fichiers SQL stockés sur le NAS puissent être transférés sur le PC utilisateur et être importés dans Mysql (instance locale au poste utilisateur) et que le transfert inverse soit possible aussi. Si ton appli web est centralisée, ça suppose que le serveur hébergeant ton appli ait accès en écriture à tous les postes utilisateurs concernés et au NAS. Ca me paraît bien compliqué et dangereux :/
 
L'autre solution serait que chaque PC utilisateur ait une instance de ton appli en local (un wamp portable par ex) mais là, tu perds l'avantage de l'appli web centralisée (à chaque évol de l'appli, faudra la distribuer aux PC utilisateurs), pas top...
 
Je vois pas pourquoi tu pourrais pas faire tout sur une seule machine (appli web + mysql qui chargera les BD demandées et se chargera de les créer si elles n'existent pas).


Heu pour ce qu'il veux faire faudrait surtout faire du sqlite... :??:
 
Parce que en PHP+MySQL ça va être de l'usine à gaz quoi... Surtout que point de vue droit & co bon voilà quoi...


Message édité par MEI le 12-04-2012 à 17:37:52

---------------
| AMD Ryzen 7 7700X 8C/16T @ 4.5-5.4GHz - 64GB DDR5-6000 30-40-40 1T - AMD Radeon RX 7900 XTX 24GB @ 2680MHz/20Gbps |
n°2136038
lp77
Posté le 12-04-2012 à 20:22:45  profilanswer
 

Pourquoi c'est pas possible avec du php ?
La 1ère étape ca sera d'abord de créer un script (php ?) qui fasse la :
- Connexion au NAS (on a nos BDD livrés dessus, fichiers .sql)
- Importation des BDD.sql dans le dossier SQL des PC (comment ça se passera si le fichier .sql a déjà était copier ?)
- Importation des .sql dans MySQL (--> création des BDD, parcontre ici vous avez dit que les BDD doivent tte être présente pour regarder si la BDD est présente ou non depuis la page HTML, donc on importe toutes les BDD à chaque fois ? )
C'est qu'à partir de là, que je pourrais commencer la suite (ecriture dans la BDD, renvoie vers le NAS ...). Avez vous des idées pour la 1ère partie (sachant que j un peu simplifier la tâche, parce que initialement l'utilisateur devait taper le nom d'une BDD sur la page HTML et ensuite il y avait une recherche dans le NAS ..., là je proposerai tout cas dans un script qui pourra éventuellement se déclencher tout seul pour plus de transparence et ce seront toutes les BDD qui seront importés parcontre!!!)

n°2136067
rufo
Pas me confondre avec Lycos!
Posté le 13-04-2012 à 09:03:38  profilanswer
 

Il a pas dit que c'était pas possible en php, il a dit qu'il valait mieux utiliser Sqlite plutôt que Mysql.
 
Perso, je vois pas trop pourquoi. Sqlite est certes un sgbd très léger, mais vue que Mysql est déjà installé sur les PC utilisateurs, du coup, ça devient plus trop un argument à mon sens.  
 
MEI, tu pourrais détailler ta solution, svp?


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2136070
MEI
|DarthPingoo(tm)|
Posté le 13-04-2012 à 09:31:57  profilanswer
 

rufo a écrit :

Il a pas dit que c'était pas possible en php, il a dit qu'il valait mieux utiliser Sqlite plutôt que Mysql.
 
Perso, je vois pas trop pourquoi. Sqlite est certes un sgbd très léger, mais vue que Mysql est déjà installé sur les PC utilisateurs, du coup, ça devient plus trop un argument à mon sens.  
 
MEI, tu pourrais détailler ta solution, svp?


C'est beaucoup plus facile de déposer une fichier unique, qui ne demande aucune configuration que d'exporter une BDD MySQL, la réimporter, et prier que rien ne foire dans le process.
 
Mais bon même en sqlite j'ai peur que ça finisse en usine à gaz complexe...
 


---------------
| AMD Ryzen 7 7700X 8C/16T @ 4.5-5.4GHz - 64GB DDR5-6000 30-40-40 1T - AMD Radeon RX 7900 XTX 24GB @ 2680MHz/20Gbps |
mood
Publicité
Posté le 13-04-2012 à 09:31:57  profilanswer
 

n°2136604
lp77
Posté le 14-04-2012 à 21:13:53  profilanswer
 

La 1ère étape ca sera d'abord de créer un script (bat ?) qui fasse la :
- Connexion au NAS (on a nos BDD livrés dessus, fichiers .sql)
- Importation des BDD.sql dans le dossier SQL des PC (comment ça se passera si le fichier .sql a déjà était copier ?)
idée de code :

Code :
  1. xcopy \\192.168.0.5\nas\*.* c...\SQL\


- Importation des .sql dans MySQL (--> création des BDD, parcontre ici vous avez dit que les BDD doivent tte être présente pour regarder si la BDD est présente ou non depuis la page HTML, donc on importe toutes les BDD à chaque fois ? )
C'est qu'à partir de là, que je pourrais commencer la suite (ecriture dans la BDD, renvoie vers le NAS ...). Avez vous des idées pour la 1ère partie (sachant que j un peu simplifier la tâche, parce que initialement l'utilisateur devait taper le nom d'une BDD sur la page HTML et ensuite il y avait une recherche dans le NAS ..., là je proposerai tout cas dans un script qui pourra éventuellement se déclencher tout seul pour plus de transparence et ce seront toutes les BDD qui seront importés parcontre!!!) Merci

n°2136625
rufo
Pas me confondre avec Lycos!
Posté le 14-04-2012 à 22:50:12  profilanswer
 

Tu peux tout faire ne php si tu veux, pas besoin de .bat (encore que php peut exécuter un .bat via la commande shell_exec() ). Tout le pb est une question d'accès.
 
Par contre, je me souviens que php (et y'a peut-être pas que lui) a un souci pour manipuler les fichiers situés sur un lecteur réseau monté sous windows...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2136627
lp77
Posté le 14-04-2012 à 22:55:55  profilanswer
 

Avec cette commande, je suis sensé récupérer les fichiers .sql (BDD) du NAS et les exporter vers le serveur WEB, elle comporte beaucoup d'erreurs ? (j'opterai sans doute pour l'installation des pages WEB sur un seul PC bien que l'on en ait 4, parcontre les BDD devront être créer sur les PCs des développeurs ....)


Message édité par lp77 le 14-04-2012 à 22:56:32
n°2136708
rufo
Pas me confondre avec Lycos!
Posté le 15-04-2012 à 18:08:09  profilanswer
 

si tu pars sur une solution web, la création des BD sur les PC des dév ne va pas être évidente, c'est pas l'architecture classique où y'a juste un seul SGBD. Là, t'es a 4...
 
Question : pourquoi les BD doivent être sur les PC des dév?


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2136746
lp77
Posté le 15-04-2012 à 22:01:46  profilanswer
 

En fait, les BDD stockent les résultats des tests, elles sont remplis depuis les PCs de développement puis elles sont enrengistrer sur le NAS, on voudrait donc que les développeurs puissent modifier certains paramètres en reprenant des BDD issues du NAS (en sauvegardant une nouvelle version, sans toucher à la 1ère), le developpeur aura ensuite la BDD sur son PC et il pourra réaliser les tests et récupérer de nouvelles valeurs en fonction des paramètres (il y a qu'un certain nombre de tables à modifier, je pense que je devrais supprimer les enregistrements des autre tables afin de recevoir les nouvelles valeurs ...) elles devront ensuite être sauvegardé sur le NAS ...  
Quelle est la meilleure solution (centraliser le site ou le dispatcher sur les PCs de dev) ? Argumentez si possible ...
ps : l'idéal serait que lorsqu'on sauvegarde une BDD sur le NAS, elle soit directement créer sur le PC de développement (on est dans ce cas plus vers la configuration centralisé, si on opte pour la 2ème solution, il faudrait la créer uniquement sur le PC qui émet la demande de modification d'une BDD ...)
Merci beaucoup ...
 
 


Message édité par lp77 le 15-04-2012 à 22:15:02
n°2136968
lp77
Posté le 16-04-2012 à 20:04:34  profilanswer
 

Personne ? (je ne suis qu'au début du projet, je dois faire valider une solution possible avec mon tuteur avant de commencer la technique ...).
Merci;

n°2137070
lp77
Posté le 17-04-2012 à 10:09:13  profilanswer
 

Les BDD devront être créer sur le PC intranet (ouf ...)

n°2137462
lp77
Posté le 19-04-2012 à 10:37:44  profilanswer
 

Je voudrais maintenant importer des BDD MySQL (fichiers SQL) issus d'un dossier : (je place le batch dans le dossier même ou se trouve les BDD)
j'ai commencer à code, mais ça ne fonctionne pas :
 

Code :
  1. @path c:\wamp\bin\mysql\mysql5.1.36\bin\
  2. @set EMPLACEMENT="D:\Documents and Settings"
  3. @for /F "usebackq" %%i in (`dir /b`) do (
  4. mysql -h hote -u root --password=pass bdd < %EMPLACEMENT%\%%~nxi)


 
OU
 
 

Code :
  1. @path c:\wamp\bin\mysql\mysql5.1.36\bin\
  2. @set EMPLACEMENT="D:\Documents and Settings"
  3. for %%X in (*.sql) do commande (
  4. mysql -h hote -u root --password=pass bdd < %EMPLACEMENT%\%%~nxi)


Aucun des deux ne marche, ca aurait était plus compliqué en PHP !?... Il faut donc une boucle FOR qui importe les BDD pour tous les fichiers .sql
Merci;


Message édité par lp77 le 19-04-2012 à 10:44:15
n°2137486
rufo
Pas me confondre avec Lycos!
Posté le 19-04-2012 à 11:44:40  profilanswer
 

Perso, n'étant pas très bon en Batch, je préfère ce genre d'opération en PHP, d'autant plus que PHP a des capacités de traitement bien > à batch :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2137507
lp77
Posté le 19-04-2012 à 13:38:39  profilanswer
 

Un point de départ svp ?

n°2137518
rufo
Pas me confondre avec Lycos!
Posté le 19-04-2012 à 14:05:36  profilanswer
 

ben faudrait d'abord vérifier que php arrive bien à accéder au contenu du répertoire distant... Comme je te l'ai dit dans un précédent post, j'avais essayé une fois de faire ça et j'avais eu des soucis sous Windows...
 
Mais si ça marche, ben suffit que ton script php liste le contenu du répertoire (fonction glob() ), puis fasse la copie des fichiers (fonction copy() ).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2137683
lp77
Posté le 19-04-2012 à 16:52:39  profilanswer
 

J'ai commencer a regarder en PHP pour lister les fichiers dans une liste déroulante, ca me donne pas grand chose (affichage des noms des fichiers sur une ligne)

Code :
  1. <?php
  2. $dir = @dir('D:/Documents And Settings');
  3. if($dir){
  4.   while ($entry = $dir->read()){
  5.     if(!is_dir('./'.$entry) && $entry != "." && $entry != ".." ){
  6.       echo "<option value=\"$entry\">$entry</option>";
  7.     }
  8.   }
  9. }
  10. else
  11.   echo "Le dossier ne peut pas être ouvert";


ps:pour la copie des fichiers c'est bon j'ai fais ça en batch...
Au fait, le but est de permettre la sélection d'une BDD via une liste déroulante (je me suis dis que juste en récupérant le nom du fichier ca suffira, sinon je pourrai très bien extraire les noms des BDD directement depuis le serveur MySQL, est ce meilleure comme solution ?). Je récupererai la valeurs de la variable dans d'autre pages.
Merci beaucoup!


Message édité par lp77 le 19-04-2012 à 19:20:40
n°2138302
lp77
Posté le 22-04-2012 à 22:44:25  profilanswer
 

Sur le serveur WEB, j'ai un serveur mysql avec une BDD vierge, je voudrais que les utilisateurs puissent créer de nouvelles bases en utilisant le modele de cette BDD  (pour la remplir après via un formulaire ...) en lui donnant un nom mais en LAISSANT toujours de côté la BDD vierge. Quel est la meilleure solution ? Je demande le nom de la nouvelle BDD et execute le script de la BDD vierge par la suite (niveau temps d'execution c'est rapide (php) ? ...)
Merci;

n°2138373
lp77
Posté le 23-04-2012 à 10:03:05  profilanswer
 

Je veux faire une importation en ligne de commande après avoir créer une BDD mais ca fonctionne pas (le script PHP est un dump mysql ...)
create database serveur;
use serveur;
OK pour ces deux commandes.
Après, j'essaye de faire une importation, mais j'ai toujours le même message d'erreur :
 

Code :
  1. mysql> mysql -h localhost -u root --password=root serveur < table.sql;
  2. ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
  3. corresponds to your MySQL server version for the right syntax to use near 'mysql
  4. -h localhost -u root --password=root serveur < table.sql' at line 1


Merci;

n°2138416
rufo
Pas me confondre avec Lycos!
Posté le 23-04-2012 à 11:03:08  profilanswer
 

Gros  malin, tu lances la ligne de commande alors que t'es déjà dans mysql, qui là, attend une requête SQL. Faut lancer ta commande direct dans le shell...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2138426
lp77
Posté le 23-04-2012 à 11:25:19  profilanswer
 

En tapant juste ça :

Code :
  1. -h localhost -u root --password=root serveur < table.sql;


j'ai la même erreur ...


Message édité par lp77 le 23-04-2012 à 11:25:32
n°2138444
rufo
Pas me confondre avec Lycos!
Posté le 23-04-2012 à 12:46:08  profilanswer
 

Mais non, faut sortir de mysql ! Après le prompt du shell, tu tapes mysql -h localhost -u root --password=root serveur < table.sql;
 
Si t'as pas mis le path de mysl dans $PATH, faut rajouter le chemin du binaire mysql en début de ta ligne de commande...


Message édité par rufo le 23-04-2012 à 12:46:24

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2138470
lp77
Posté le 23-04-2012 à 14:09:06  profilanswer
 

j'ai essayé ça :

Code :
  1. $sql=""c:\wamp\bin\mysql\mysql5.1.36\bin\mysqlimport.exe" -h localhost -u root --password=root serveur < table.sql";
  2. $sql = mysql_query($sql);


Ca n'a évidement rien donné;


Message édité par lp77 le 23-04-2012 à 14:09:22
n°2138496
rufo
Pas me confondre avec Lycos!
Posté le 23-04-2012 à 15:55:14  profilanswer
 

mais je viens de te dire que ce n'est pas une requête SQL !!!  :pt1cable:  Ta ligne de commande ne doit donc pas se lancer dans mysql (que ce soit le binaire ou via un script php et la fonction mysql_query).
 
ta ligne de commande est une commande système, tu comprends? Elle doit donc se lancer via le shell (vu que tu sembles être sous Windows, via l'utilitaire cmd, la console quoi) ou via la fonction shell_exec() de php.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2138555
lp77
Posté le 23-04-2012 à 22:04:06  profilanswer
 

Le but est d'importer une BDD (après en avoir créer une ...) via une page WEB, c'est une commande de ce type là (j'ai trouvé ca sur le net) :  

Code :
  1. $shellExec = 'C:\wamp\bin\mysql\mysql5.1.36\bin\mysql -h localhost -u root ........
  2. shell_exec($shellExec);

n°2138610
rufo
Pas me confondre avec Lycos!
Posté le 24-04-2012 à 10:49:21  profilanswer
 

Oui, c'est ça qu'il faut faire.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2138686
lp77
Posté le 24-04-2012 à 13:57:45  profilanswer
 

J'ai essayé la commande suivante sur page web mais elle ne passe pas : (je crée avant une BDD et la selectionne avec use ...)

Code :
  1. $commande = "C:/Program Files/MySQL/MySQL Server 5.1/bin/mysql --host=localhost --user=root --password=root serveur4 < BDD.sql";
  2. $CR_exec = system($commande);


Message édité par lp77 le 24-04-2012 à 13:58:38
n°2138696
rufo
Pas me confondre avec Lycos!
Posté le 24-04-2012 à 14:36:42  profilanswer
 

c'est à cause de l'espace dans le chemin "program files"...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2138709
lp77
Posté le 24-04-2012 à 15:14:28  profilanswer
 

Code :
  1. $commande = ""C:/Program Files/MySQL/MySQL Server 5.1/bin/mysql --host=localhost --user=root --password=root serveur4 < BDD.sql"";
  2. $CR_exec = system($commande);


Ca ne passe pas aussi

n°2138739
lp77
Posté le 24-04-2012 à 16:22:28  profilanswer
 

Déjà je n'ai plus les erreurs qui sont affichés ! J'utilise WAMP. Lors de l'ouverture du fichier php error log, WAMP me dit qu'il n'existe pas et si je veux en créer un. J'ai mis oui et du coup il reste vide ...
Merci...


Message édité par lp77 le 24-04-2012 à 16:32:02
n°2138743
rufo
Pas me confondre avec Lycos!
Posté le 24-04-2012 à 16:35:17  profilanswer
 

Vu comment t'as écrit le contenu de $commande, ça m'étonne pas :/
 
Essayes un truc du genre :

Code :
  1. $commande = "\"C:/Program Files/MySQL/MySQL Server 5.1/bin/mysql\" --host localhost --user root --passwordroot serveur4 < BDD.sql";
  2. $CR_exec = shell_exec($commande);


Message édité par rufo le 24-04-2012 à 16:36:42

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2138748
lp77
Posté le 24-04-2012 à 16:40:30  profilanswer
 

Toujours, pas, la BDD est crée mais vierge. Le fichier .sql est dans /bin

n°2138750
rufo
Pas me confondre avec Lycos!
Posté le 24-04-2012 à 16:44:26  profilanswer
 

Ton pb vient des espaces dans le chemin d'accès... Va falloir trouver comment le résoudre. Perso, mes serveurs de prods sont tous sous Linux... Et ce genre de ligne de commande fonctionne.
 
Avant de l'utiliser dans un script php, essaye de trouver la syntaxe de la ligne de commande qui va fonctionner dans la console de Windows (cmd).


Message édité par rufo le 24-04-2012 à 16:45:25

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2138753
lp77
Posté le 24-04-2012 à 16:49:59  profilanswer
 

Code :
  1. $commande = "C:/wamp/bin/mysql/mysql5.1.36/bin/mysql  --host localhost --user root -passwordroot serveur7 < BDD.sql";
  2. $CR_exec = shell_exec($commande);


Même en utilisant MySQL de WAMP (sans espace ...) ca passe pas

n°2138761
rufo
Pas me confondre avec Lycos!
Posté le 24-04-2012 à 16:57:56  profilanswer
 

c'est --passwordroot (y'a 2 -- normalement).
 
Et je t'ai dit d'essayer direct dans le shell (cmd), sans passer par un script php pour trouver la bonne syntaxe. Mysql va t'afficher les erreurs.


Message édité par rufo le 24-04-2012 à 16:58:46

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  APPLICATION PHP/SQL

 

Sujets relatifs
Requête SQL - Position dans un classementerreur d'importation sauvegarde base de données SQL
Aide pour requete SQLPHP : Calcul de moyenne par modalité
Stocker les étapes d'une requête SQL en table[Résolu] Intégrer le code du captcha au reste du code de traitement
Colonne qui change de nom toute seule dans SQL ServerPHP supprimer produit panier
comment utiliser deux module liste simple avec une autre application[PHP+SQL] Cherche un petit coup de main pour une application simple
Plus de sujets relatifs à : APPLICATION PHP/SQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR