IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windev Mobile Discussion :

Problème avec ma requête MySql pour afficher les données de la BDD [WM20]


Sujet :

Windev Mobile

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut Problème avec ma requête MySql pour afficher les données de la BDD
    Bonjour, je suis nouveau dans le développement WinDev Mobile (la version : 20). J'ai téléchargé les fichiers : connect.php, php4wd.php et la classe c_Php4WX.wdc sur le site sqlmanagerx.com.

    La connexion à ma BD se passe sans problème, mais j'ai une erreur lors de la récupération des données via la requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    retCode est une chaîne 
    vindice, access sont des entier
    //
    retCode = "SELECT *  FROM participant"
    access = monAccess:mySQLExec(retCode,0)
     
    SI access ALORS
    	//Action à faire dans la zone répétée
    	TANTQUE monAccess:mySQLFetch(1)
    		vindice = ZoneRépétéeAjouteLigne(ZEParticipants)
     
    		SI vindice > 0 ALORS
    			ZEParticipants[vindice].Snom = monAccess:mySQLLitColParNom(1, "nom")
    		FIN
    	FIN
     
    SINON
    	Erreur(monAccess:mySQLGetErrorMessage())
    FIN
    Voici le message d'erreurNom : capture.png
Affichages : 1729
Taille : 35,0 Ko

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Dans la classe monAccess, tu appelles la fonction mySQLExec.
    Peux-tu nous montrer le code de cette fonction.
    Ici, tu as une variable retcode, ; en général retCode, ça veut dire 'Code retour'. C'est donc extrèmement bizarre que ta variable retCode contienne une requête SQL.
    En voyant le code de cette fonction mySQLExec, on devrait pouvoir corriger tout ça.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    Merci pour ta réponse, voici le code de la fonction. Je signale que la fonction est fournie dans la classe c_PHP4WX.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    FONCTION mySQLExec(sqlQuery, requestNumber)
     
    LOCAL	
    	v_nbfois 			est un entier  = :MysqlNbFois
     
    	v_ligne		 		est un chaîne
    	ResLancement 		est un booléen
    	v_chaineResult 		est une chaîne 
     
    	v_indiceBind 		est un entier
     
    	retcode 			est un entier
    	v_indice 			est un entier = 1
    	v_colonne 			est un entier = 0
     
    myRequestNumber 	est un entier
    v_mySQL 			est une chaîne
     
    v_ZipTemp			est une chaîne =fRepExe()+"\"+"resultat.zip"
    v_ZipTempLire		est une chaîne ="resultat.txt"
    resZip 				est un entier
     
    IF (requestNumber > :myMaxRequestNumber) THEN
    	Erreur("Le numéro de requête doit être compris entre 0 et " + NumériqueVersChaîne(:myMaxRequestNumber) + ".....", "Veuillez corriger votre code.")
    	RENVOYER (False)
    END
     
    myRequestNumber = requestNumber+1
    sqlQuery = :ExecLimit(sqlQuery)
     
    :myOldQuery = sqlQuery
    SI :modeUTF8Entree 		ALORS v_mySQL = :CrypteURL(ChaîneVersUTF8(sqlQuery))
    SI PAS :modeUTF8Entree 	ALORS v_mySQL = :CrypteURL(sqlQuery)
     
    HTTPCréeFormulaire("FORM")
    SI :modeUTF8Entree ALORS 
    	HTTPAjouteParamètre("FORM", "requete", 	  	ChaîneVersUTF8(v_mySQL))
    	HTTPAjouteParamètre("FORM", "typeBase",  	ChaîneVersUTF8(:TypeBase))
    	HTTPAjouteParamètre("FORM", "tNomBase", 	ChaîneVersUTF8(:myBase))
    	HTTPAjouteParamètre("FORM", "bind", 	  	ChaîneVersUTF8(:bind))
    	HTTPAjouteParamètre("FORM", "bindLen", 		ChaîneVersUTF8(:BindLen))
    	HTTPAjouteParamètre("FORM", "bindVal", 		ChaîneVersUTF8(:bindVal))
    	HTTPAjouteParamètre("FORM", "bindType", 	ChaîneVersUTF8(:BindType))
    	SI :methodeZip 		ALORS 	HTTPAjouteParamètre("FORM", "methode", ChaîneVersUTF8("zip"))    		SINON HTTPAjouteParamètre("FORM", "methode", ChaîneVersUTF8("NON"))
    	SI :CryptRetour 	ALORS 	HTTPAjouteParamètre("FORM", "crypteretour", ChaîneVersUTF8("OUI")) 		SINON HTTPAjouteParamètre("FORM", "crypteretour", ChaîneVersUTF8("NON"))
    	SI :dataHexa 		ALORS 	HTTPAjouteParamètre("FORM", "dataHexa", ChaîneVersUTF8("OUI")) 			SINON HTTPAjouteParamètre("FORM", "dataHexa", ChaîneVersUTF8("NON"))
    	SI :modeUTF8Sortie 	ALORS 	HTTPAjouteParamètre("FORM", "modeUTF8Sortie", ChaîneVersUTF8("OUI")) 	SINON HTTPAjouteParamètre("FORM", "modeUTF8Sortie", ChaîneVersUTF8("NON"))
    FIN
     
    SI PAS :modeUTF8Entree ALORS 
    	HTTPAjouteParamètre("FORM", "requete", 	  	v_mySQL)
    	HTTPAjouteParamètre("FORM", "typeBase",  	:TypeBase)
    	HTTPAjouteParamètre("FORM", "tNomBase", 	:myBase)
    	HTTPAjouteParamètre("FORM", "bind", 	  	:bind)
    	HTTPAjouteParamètre("FORM", "bindLen", 		:BindLen)
    	HTTPAjouteParamètre("FORM", "bindVal", 		:bindVal)
    	HTTPAjouteParamètre("FORM", "bindType", 	:BindType)
    	SI :methodeZip 		ALORS 	HTTPAjouteParamètre("FORM", "methode", "zip")    		SINON HTTPAjouteParamètre("FORM", "methode", "NON")
    	SI :CryptRetour 	ALORS 	HTTPAjouteParamètre("FORM", "crypteretour", "OUI") 		SINON HTTPAjouteParamètre("FORM", "crypteretour", "NON")
    	SI :dataHexa 		ALORS 	HTTPAjouteParamètre("FORM", "dataHexa", "OUI") 			SINON HTTPAjouteParamètre("FORM", "dataHexa", "NON")
    	SI :modeUTF8Sortie 	ALORS 	HTTPAjouteParamètre("FORM", "modeUTF8Sortie", "OUI") 	SINON HTTPAjouteParamètre("FORM", "modeUTF8Sortie", "NON")
    FIN
     
    HTTPTimeOut(76000000)
    ResLancement = HTTPEnvoieFormulaire("FORM", :URL)
    SI ResLancement = Vrai ALORS
    	//------------------------------------------------------------------------------------------------------------
    	// traitement de la chaine si elle du ZIP ou du normale 
    	// les données sont cryptée si crypt retour et le zip contient la meme chaine que si on a pas zip
    	//------------------------------------------------------------------------------------------------------------	
     
    	SELON Vrai
    		CAS :methodeZip 		: v_chaineResult = HTTPDonneRésultat()
    		CAS :modeUTF8Sortie   	: v_chaineResult = UTF8VersChaîne(HTTPDonneRésultat())
    		AUTRE CAS 				: v_chaineResult = AnsiVersUnicode(HTTPDonneRésultat(httpRésultat),:alphabet)
    	FIN
     
    	//-----------------------------------------------------------------------------------------------------------
    	// gestion du zip normalement on doit avoir un retour blanc + fichier zip
    	// si on a une autre chose que chaine vide alors il y a eu un die dans le fichier php
    	// on oublie alors le zip et on continue pour traiter l'erreur
    	//-----------------------------------------------------------------------------------------------------------
    	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
    	//-----------------------------------------------------------------------------------------------------------
    	// Gestion des erreurs 
    	// soit la chaine est vide et on recupere l'entete
    	// soit elle ne contient pas les separateur et donc le Exec c'est mal passé
    	//-----------------------------------------------------------------------------------------------------------
    	SI Taille(v_chaineResult) = 0 ALORS
    		:ErreurText = HTTPDonneRésultat(httpEntête)
    		SI resZip<>0 ALORS :ErreurText = zipMsgErreur(resZip)
    		RENVOYER Faux
    	FIN
    	//-----------------------------------------------------------------------------------------------------------
    	// si on a pas les separateur alors il y a une une erreur
    	// on ne fait pas le traitement suivant on renvoie simplement le retour du script php
    	//----------------------------------------------------------------------------------------------------------
    	SI Position(v_chaineResult,"--DEBUTSQL--PHP4WDSEP") = 0 ALORS 
    		:ErreurText = HTMLVersTexte(v_chaineResult)
    		RENVOYER(Faux)
    	FIN
    	//-----------------------------------------------------------------------------------------------------------
    	v_chaineResult = ExtraitChaîne(ExtraitChaîne(v_chaineResult,2,"--DEBUTSQL--PHP4WDSEP"),1,"--FINSQL--") 	
    SINON
    	:ErreurText = ErreurInfo(errComplet)
    	RENVOYER Faux
    FIN
     
    :ligne[myRequestNumber] = 0
    :colonne[myRequestNumber] = 0
    retcode = Vrai
     
    v_indCar est un entier = 1
    v_indCour est un entier = 1
     
    BOUCLE
    	Multitâche(-1)
    	// extraction de la valeur des colonnes
    	v_indCar = Position(v_chaineResult,"PHP4WDSEP",v_indCour)
    	v_ligne = v_chaineResult[[ v_indCour A v_indCar-1]]
     
    	SI v_indCar =0 ALORS SORTIR 
     
    	v_indCour = v_indCour+Taille(v_ligne)+9
    	v_indCar+= v_indCour
     
    	SI v_ligne = "--BINDVARIABLE--" ALORS SORTIR
    	// traitement des valeur a recuperer la premiere fois on mettra les 
    	// indice et nom de colonne ensuite on prend les valeur des lignes
    	SI v_ligne = "--LIGNES--" ALORS 
    		:colonne[myRequestNumber] = v_colonne
    		:ligne[myRequestNumber] = 0
    	SINON
    		v_ligne = Remplace(v_ligne,"&Oslash;","")  
    		v_colonne ++
    		:ligne[myRequestNumber] ++
    		SELON myRequestNumber
    			CAS 1 : Dimension(:Resultat1,Dimension(:Resultat1)+1);:Resultat1[:colonne[myRequestNumber]+:ligne[myRequestNumber]] = v_ligne	
    			CAS 2 : Dimension(:Resultat2,Dimension(:Resultat2)+1);:Resultat2[:colonne[myRequestNumber]+:ligne[myRequestNumber]] = v_ligne	
    			CAS 3 : Dimension(:Resultat3,Dimension(:Resultat3)+1);:Resultat3[:colonne[myRequestNumber]+:ligne[myRequestNumber]] = v_ligne	
    			CAS 4 : Dimension(:Resultat4,Dimension(:Resultat4)+1);:Resultat4[:colonne[myRequestNumber]+:ligne[myRequestNumber]] = v_ligne	
    			CAS 5 :	Dimension(:Resultat5,Dimension(:Resultat5)+1);:Resultat5[:colonne[myRequestNumber]+:ligne[myRequestNumber]] = v_ligne				
    		FIN
    	FIN
    FIN
     
    // recuperation des variable bind dans le tableau
    v_indiceBind=0
    BOUCLE
    	v_indCar = Position(v_chaineResult,"PHP4WDSEP",v_indCour)
    	v_ligne = v_chaineResult[[ v_indCour A v_indCar-1]]
    	SI v_indCar =0 ALORS SORTIR 
     
    	v_indCour = v_indCour+Taille(v_ligne)+9
    	v_indCar+= v_indCour
    	SI :CryptRetour ALORS v_ligne = :URLDecrypte(v_ligne)
     
    	v_indiceBind++	
    	Dimension(:bindres,Dimension(:bindres)+1)
    	:bindres[v_indiceBind] = v_ligne
    FIN
     
    SI :ligne[myRequestNumber] > 0 ET :colonne[myRequestNumber] > 0 ALORS 
    	:ligne[myRequestNumber] = :ligne[myRequestNumber] / :colonne[myRequestNumber]
    	:indiceEncour[myRequestNumber] = 1
    SINON
    	:mySQLEnDehors = Vrai
    FIN
    :indiceEncour[myRequestNumber]=0
    RENVOYER (retcode)

  4. #4
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2011
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 57
    Points : 102
    Points
    102
    Par défaut
    bonjour,

    le probleme ne viens pas de la methode
    le message veut simplement dire que php4wx ne connait le type de votre base

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    MonAcces:mySQLConnecte("http://monsite.fr/php4wd.php","","","tests")
    MonAcces:CleCryptage="CLE_CRYPTAGE" // doit etre identique dans le fichier connect.php et la classe (mettez ce que vous voulez)
    MonAcces:TypeBase="PDOMySQL"
     
    v_requete est une chaîne = "select * from contacts"
    TableSupprimeTout(TBL_CONTACTS)
    SI MonAcces:mySQLExec(v_requete,1) ALORS
    	TANTQUE MonAcces:mySQLFetch(1)
    		v_indice = TableAjouteLigne(TBL_CONTACTS)
    		SI v_indice >0 ALORS
    			TBL_CONTACTS[v_indice].id 			= MonAcces:mySQLLitColParNom(1,"idContact")
    			TBL_CONTACTS[v_indice].nom 			= MonAcces:mySQLLitColParNom(1,"nom")
    			TBL_CONTACTS[v_indice].prenom		= MonAcces:mySQLLitColParNom(1,"prenom")
    			TBL_CONTACTS[v_indice].adresse 		= MonAcces:mySQLLitColParNom(1,"adresse")
    			TBL_CONTACTS[v_indice].date_naissance	= MonAcces:mySQLLitColParNom(1,"dateNaissance")
    		FIN
    	FIN
    SINON
    	Info(MonAcces:mySQLGetErrorMessage())	
    FIN
    MonAcces:TypeBase="PDOMySQL" : suivant les connecteur inclu dans votre php vous pouez le changer ils sont visible dans php4wd.php

    il ya aussi une partie test dans php4wd.php pour tester le script seul
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    /***********************************************************************************************/
    /* pour test du fichier en ligne de commande a mettre en commentaire avant passage a windev    */
    /***********************************************************************************************/
    if($_GET['test']=='OUI'){ 
    	error_reporting($e & (E_ALL -E_WARNING -E_NOTICE));
    	$typeBase	= 'PDOMySQL';
     
    	//***************************************************************************************
    	// test pour les langues arabes et autres ou il faut faire un set ou pas suivant le serveur
    	// il faudra aussi le faire dans windev mais la c'est simple un mySQLexec 1 seule fois 
    	// en debut de projet
    	//***************************************************************************************
    	if ($modeUTF8Sortie=="OUI"){
    		$cmds[] 	= "SET CHARACTER SET 'UTF8'";
    		$cmds[] 	= "SET NAMES UTF8";
    	}
    	//***************************************************************************************
    	// requete test Pour afficher en mode navigateur et voir le test
    	//***************************************************************************************
    	$cmds[] 	= "select * from contacts	";
     
    	echo '<meta http-equiv="Content-Type" content="text/html; charset='.$charSet.'" />';
    	echo "version script : <b>".$ScriptVersion."</b><br>";
    	echo "version php : <b>".phpversion()."</b><br><br>";
    }
    /***********************************************************************************************/

    vous pouvez alors mettre une requete qui fonctionne sur votre base et lancer le sript depuis le navigateur
    http://monsite.fr/php4wd.php?test=OUI

    si cela fonctionne alors passez sous windev
    la partie remote est configurée et ne devrait plus bougé

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    J'ai lancé le test, voici le message d'erreur :
    Erreur : SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Hôte inconnu.

    Pourtant le lien est correct et la connexion est établie.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    host, user, pass, bd, v_retCode sont des chaînes 
     
    host = "http://localhost/projects/php4wd.php"
    user = "root"
    pass = ""
    bd = "bdd"
     
    MonAcces:TypeBase="PDOMySQL"
    MonAcces:CleCryptage="KEY"
    v_retCode = MonAcces:mySQLConnecte(host,user, pass, bd)
     
    SI PAS v_retCode = Vrai ALORS
    	Erreur("Connexion  impossible")
    SINON
    	Info("Connecter")
    	OuvreFenêtreMobile(menu)
    FIN
    Requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    req est une chaîne
    vIndice est un entier = 0
     
    ZoneRépétéeSupprimeTout(ZEParticipants)
    v_requete est une chaîne = "SELECT  *  FROM  participant"
    req = MonAcces:mySQLExec(v_requete,1)
     
    SI req = 1 ALORS
    	TANTQUE MonAcces:mySQLFetch(1)
    		vIndice = ZoneRépétéeAjouteLigne(ZEParticipants)
    		SI vIndice > 0 ALORS
    			ZEParticipants[vIndice].Snom = MonAcces:mySQLLitColParNom(1, "nom")
    		FIN
    	FIN
    SINON
    	Info(MonAcces:mySQLGetErrorMessage())	
    FIN
    Lorsque je fais le débogage, tous se passe bien jusqu'à la fonction d'encodage AnsiVersUnicode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    HTTPTimeOut(76000000)
    ResLancement = HTTPEnvoieFormulaire("FORM", :URL)
    SI ResLancement = Vrai ALORS
    	//------------------------------------------------------------------------------------------------------------
    	// traitement de la chaine si elle du ZIP ou du normale 
    	// les données sont cryptée si crypt retour et le zip contient la meme chaine que si on a pas zip
    	//------------------------------------------------------------------------------------------------------------	
     
    	SELON Vrai
    		CAS :methodeZip 		: v_chaineResult = HTTPDonneRésultat()
    		CAS :modeUTF8Sortie   	: v_chaineResult = UTF8VersChaîne(HTTPDonneRésultat())		
    		AUTRE CAS 				: v_chaineResult = AnsiVersUnicode(HTTPDonneRésultat(httpRésultat),:alphabet)
    	FIN
    ...................
    ...............

  6. #6
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2011
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 57
    Points : 102
    Points
    102
    Par défaut
    verifiez les element dans connect.php
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $PublicKey = 'CLE_CRYPTAGE';
     
    /*******************************************************************
    * CONNEXION ACTIVE        ------------------------------------------
    ********************************************************************/
    $serv = '127.0.0.1';
    $user = 'root';
    $pass = '';
    $base = 'tests';
    ensuite si cela est bon vous devriez avoir sous le navigateur
    Nom : testPHP4WD.PNG
Affichages : 1593
Taille : 21,0 Ko

    une fois cela fait vous pourrez passer sous windev
    mais il faut que les éléments de connexion soient bons et que la requête depuis le navigateur fonctionne

  7. #7
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    La connexion coté navigateur est bonne (capture) mais le problème demeure toujours au même niveau. Du coup, je me demande s'il n'y a pas une possibilité de contournement.
    Nom : capture2.png
Affichages : 1628
Taille : 14,1 Ko

  8. #8
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2011
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 57
    Points : 102
    Points
    102
    Par défaut
    et donc maintenant le probleme c'est quoi
    message d'erreur ?

    car si le script renvoie correctement ce qui dans l'image
    la classe windev doit aussi fonctionne

    que contient la variable v_chaineResult dans la methode mySQLExec apres l'envoi du http

  9. #9
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    v_chaineResult contient le message d'erreur.
    Nom : capture3.png
Affichages : 1560
Taille : 11,3 Ko

  10. #10
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2011
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 57
    Points : 102
    Points
    102
    Par défaut
    oui c'est bien ce que je pensais
    le programme windev ne transmet pas son typeBase

    vos fichier php (connect.php et php4wd.php ) sont bien en version 9.2.0.6 ?
    pouvez vous mettre le message d'erreur complet

    sinon pour test vous pouvez ajouter dans php4wd.php la dernière ligne pour figer le type base dans votre cas


    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //***************************************************************************************************************************
    // analyse de la demande et recuperation des requetes et variables pour les procedures stockées
    //***************************************************************************************************************************
    $cmds 						=str_replace(';','',$_POST['requete']);
    $methode 					=$_POST['methode'];
    $typeBase					=$_POST['typeBase'];
    $dataHexa					=$_POST['dataHexa'];
    $crypteretour 				=$_POST['crypteretour'];
    $modeUTF8Sortie 			=$_POST['modeUTF8Sortie'];
    $typeBase	= 'PDOMySQL';

  11. #11
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    Oui les fichiers connect.php et php4wd.php sont la version 9.2.0.6.
    Quand je fixe le type de la base de données, j'ai l'erreur suivant :
    Nom : capture4.png
Affichages : 1586
Taille : 56,0 Ko

  12. #12
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    Avec la fixation du type de la BDD, l'hôte est reconnu mais le nom de la BDD est tronqué, seule la première lettre est prise en compte.
    Nom : capture8.png
Affichages : 1541
Taille : 3,6 Ko

  13. #13
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 200
    Points : 102
    Points
    102
    Par défaut
    J'ai trouvé la solution. Il fallait ajouter le mode utf8.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MonAcces:modeUTF8Entree = Vrai
    Le code final donnera
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    host = "host/php4wd.php"
    user = "root"
    pass = ""
    bd = "BDD_Name"
     
    MonAcces:TypeBase="TYPE_BDD"
    MonAcces:CleCryptage="CLE_CRYPTAGE"
    MonAcces:modeUTF8Entree = Vrai
    v_retCode = MonAcces:mySQLConnecte(host,user, pass, bd)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Créer un tableau pour afficher les données d'une requête.
    Par BILANGA dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 13/10/2009, 12h04
  2. Réponses: 1
    Dernier message: 25/02/2009, 09h44
  3. Problème avec une requête SQL, pour access
    Par a.bott dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 23/09/2008, 17h08
  4. Probléme avec une requéte mysql(Oracle 9)
    Par lmkrte dans le forum Langage SQL
    Réponses: 2
    Dernier message: 03/03/2007, 22h41
  5. Problème avec une requête MySQL
    Par Downy35 dans le forum Requêtes
    Réponses: 4
    Dernier message: 30/08/2006, 11h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo