Login mot de passe
 
Menu Principal
Soutenir SQLManagerX
Certains nous ont demandés comment nous aider voici un lien pour nous soutenir


SQLManagerX
Dossiers
Accès SQLManagerX
Découvrez



SQLManagerX Pro


Qui est en ligne
6 utilisateur(s) en ligne (dont 6 sur forum)

Membre(s): 0
Invité(s): 6

plus...
Partenaires

http://www.TeeCod.fr
TeeCod


http://www.microsystem.fr
Microsystem


http://www.dag-system.fr/?lang=fr#
DAG SYSTEM


forum - Tous les messages
   Tous les messages

 Bas   Précédent   Suivant

(1) 2 3 4 ... 454 »


#1 Re: Fichoer ZIP***.tmp
Firetox Posté le : Yesterday 13:42
bonjour,

normalement dans la version php4WX les zip sont gérés de façon unitaire donc un seul fichier resultat.zip qui doit se trouver dans le rep exe

voici le code de mySQLExec sur la gestion du zip

SI methodeZip ALORS 
        fSauveTexte
(v_ZipTemp,v_chaineResult)
        
resZip=zipOuvre("ZIP",v_ZipTemp,zipLecture)
        
SI resZip=0 ALORS
            resZip
=zipExtraitFichier("ZIP",v_ZipTempLire)
            
SI resZip=0 ALORS v_chaineResult=fChargeTexte(v_ZipTempLire)                        
            
zipFerme("ZIP")
        
FIN
        fSupprime
(v_ZipTemp)    
        
fSupprime(v_ZipTempLire)
    
FIN


voir si ce code est dans votre classe sinon il faudrait passer a php4WX pour avoir la nouvelle gestion des zip (les script php on aussi ete modifié et on a plus besoin du fichier phpZip.php)


#2 Re: Fichoer ZIP***.tmp
Firetox Posté le : 8/21 18:37
bonjour,

je viens de rentrer de vacances (tunisie, et maroc) ca fait du bien

je look cela rapidement sur les questions posées sans reponse et probleme remontés. a tres vites pour la solution


#3 Re: Fichoer ZIP***.tmp
JMDGFR Posté le : 8/19 13:47
C'est visiblement lié aux procédures php des accès.
Celle-ci sont censées supprimer ces fichiers temporaires mais cela ne semble pas fonctionner ....


#4 Fichoer ZIP***.tmp
JMDGFR Posté le : 8/15 11:37
Bonjour,

De retour de vacances, je m'y remets.

Depuis quelques temps, j'ai une accumulation de fichier ZIP****.tmp qui s'accumule dans le répertoire des temporaires de windows. Le **** correspond à un donnée en HEXA .... Il y en a telement que cela perturbe le focntionnement du système ....

Je ne parvins pas à savoir de quel accès cela provient ....

Cela te dis quelque chose ?


#5 Re: Procédure stockée
Bugnet Posté le : 7/16 11:27
Bonjour,

J'ai trouvé pour la 1ere question : en l'état, la classe ne supporte pas le CREATE des les procédures stockées, et ce n'est pas un problème d'injection comme je l'ai d'abord cru.

C'est simplement le "decoupe_chaine" de connect.php qui découpe ce qui se trouve entre le BEGIN et le END des procédures stockées, à chaque ;.

Je m'en suis sorti en modifiant le code de mes procédures stockées et la classe pour différencier les "vrai" ; de ceux présents entre BEGIN et END.

Pas hyper propre mais ça semble marcher.

Note:
Les fonctions DROP et CALL fonctionnent très bien dans un mySQLExec().
Du coup de ne vois pas trop à quoi servent la fonction mySQLExecPS et les fonctions bind associées.


Je reste par contre sans réponse concernant ma seconde question, la version 9 de la classe fonctionne t'elle avec une appli tout UNICODE ?


Crdlt
Franck


#6 Procédure stockée
Bugnet Posté le : 7/15 14:17
Bonjour,

MySQL 5 a introduit la notion de procédures stockées. Les classes SQLManagerX et PHP4WD supportent t'elles son utilisation ? Plus précisément, peut-on créer la procédure interne à partir de ces classes ?

Lorsque j'essaie de faire un mySQLExec d'une requête de ce type : "CREATE PROCEDURE nom_procedure (mes variables) BEGIN code_sql_de_ma_procédure END", j'ai systématiquement une erreur SQL du type syntaxe erreur sur ''.
(code qui fonctionne si exécuté depuis PHPMyAdmin)

D'après ce que je comprends, il s'agirait d'un problème d'injection SQL.
J'ai essayé mais ça ne marche pas , de mettre mon code (code_sql_de_ma_procédure) entre guillemets, ou dans une variable.

Par contre l'utilisation de requêtes préparées (avec PREPARE et EXECUTE) fonctionnent bien.
Mais dans mon cas j'ai besoin de passer par une procédure car ma requête contient plusieurs requêtes séparées par des ; , ce qui n'est pas supporté par les requêtes préparées.

Il y a t'il une astuce à connaitre ? une histoire de magic-quote ? je tourne autour depuis des heures sans trouver la bonne méthode.

Autre question : je me dis que le problème vient peut être de mes fichiers PHP4WD.PHP et CONNECT.PHP qui sont en gros les version 7.x, largement modifiés par moi même pour fonctionner avec une appli entièrement UNICODE. Et qu'il faudrait peut être que je migre sur la version 9 de la classe. Dans la doc, il est écrit que cette version support les alphabet arabe chinois etc... masi en analysant son code, je ne vosi rien qui me laisse penser qu'elle sait travailler sur les chaines en UNICODE, en particulier au niveau des fonction de cryptage et décryptage.
Donc ma question est " est ce que la version 9 de la classe accès natif PHP4WD est faite pour fonctionner avec des chaines en UNICODE ? (pour rappel, en UNICODE, chaque caractère est codé sur 2 ou 3 octets au lieu de 1 seul en ANSI)

Merci d'avance pour vos réponses à ces deux questions.

Crdlt
Franck


#7 Re: Php4WX/WM20/AlwaysData Pblm requete MySql
Sani19 Posté le : 6/30 22:18
Problème résolu

MERCI.


#8 Re: Php4WX/WM20/AlwaysData Pblm requete MySql
Firetox Posté le : 6/30 18:23
bonjour,

attention le OUI doit etre en majuscule
donc

http
://mysite.alwaysdata.net/php4wd.php?test=OUI


devrait mieux fonctionné car le message que vous avez dit que le typeBase n'e'st pas postionner donc il n'est pas passer dans test
voila juste mettre le oui en majuscule


#9 Php4WX/WM20/AlwaysData Pblm requete MySql
Sani19 Posté le : 6/30 18:08
Bonjour,

je voudrai vous exposé mon problème,
Voila :
j'ai héberger ma base chez alwaysdata et je travail sur une appli sous WM20, j'ai télécharger la ver 9.2.0.0 la classe est installée correctement les 02 fichiers copiés sur le serveur avec les changements suivants {
$serv = 'mysql-mysite.alwaysdata.net';
$user = 'myuser';
$pass = '';
$base = 'bdd_test';
}Connect.php

{if($_GET['test']=='OUI'){
error_reporting($e & (E_ALL -E_WARNING -E_NOTICE));
$typeBase = 'PDOMySQL';
$cmds[] = 'SELECT * from Produit';

} php4wd.php

lorsque je lance le test sur le navigateur (
http://mysite.alwaysdata.net/php4wd.php?test=oui)
MsgRetour (Fatal error: Uncaught Error: Function name must be a string in /home/mysite/www/php4wd.php:232 Stack trace: #0 {main} thrown in /home/mysite/www/php4wd.php on line 232)

la ligne 232 contient :
$session = $func_connect($serv, $user, $pass, $base) or die("<p class='Perror'>·Failed - err Connect: ".print_r($func_error())."</p>");

dans le volet programmation:
initProjet :
monAccess est un c_Php4WX

monAccess:TypeBase = "PDOMySQL"
monAccess:CryptRetour = Faux

SI PAS monAccess:mySQLConnecte("http://mysite.alwaysdata.net/php4wd.php","myuser","","bdd_test") ALORS
Erreur(monAccess:ErreurText)
FinProgramme()
SINON
estConnecte=Vrai
FIN


appuyer BTN_Test_Remplis

vrequete est une chaîne = "SELECT *FROM Produit"
Indice est un entier
Info(estConnecte)//TEST1
Info(monAccess:mySQLExec(vrequete,2))//TEST2
Trace(monAccess:mySQLLitCol(2,1))//TEST3

SI monAccess:mySQLExec(vrequete,2) ALORS
TANTQUE monAccess:mySQLFetch(2)
Indice = ZoneRépétéeAjouteLigne(ZR1)
SI Indice > 0 ALORS
ZR1[Indice].Name = monAccess:mySQLLitCol(2,1)
ZR1[Indice].prix = monAccess:mySQLLitColParNom(2,"Prix")

FIN
FIN
Erreur(monAccess:mySQLGetErrorMessage())
FIN


Résultats:
TEST1 : 1
TEST2 : 0
TEST3 : Fenêtre Vide
Bien sur aucun msg d'erreur

je n'arrive pas a trouvé où est le problème pourquoi la requête ne s'exécute pas (TEST2)

merci


#10 Re: PHP4WX 9.2.0.0 : pas toutes les données
Firetox Posté le : 6/29 10:35
bonjour,

regardez dans l'aide windev sur la consommation et l'utilisation d'un webservice comme vous avez l'adresse du wdsl cela ne posera pas de probleme

regardez aussi les utilisation et exemple des webservices dans les exemple windev



 Haut
(1) 2 3 4 ... 454 »




Copyright: © 2004 By SQLManagerX
WinDev©, WebDev© et HyperFile© sont des marques déposées par PCSoft.
By Firetox
IMAGO:THEMES Theme Design by IMAGO DESIGN CORP.