Yvanoph Karim Modérateur ABC du Web Karim Yvanoph WebMaster 3Alannet webmaster@abc-du-web.com BP 116 7080 Menzel JEMIL Gouvernorat de BIZERTE Tunisie Yvanoph www.abc-du-web.com 0021625332209
Retour à l'Accueil du Mode d'Emploi du Forum XWebDesignor ?
   Accueil   Aide Rechercher Tags Identifiez-vous Inscrivez-vous  
Pages: [1]   Bas de page
  Imprimer  
Auteur Fil de discussion: Php, "mysql_", "mysqli_", "PDO", QUE choisir ? ? ?  (Lu 5611 fois)
yvanoph
Administrator
Hero Member
*****
Hors ligne Hors ligne

Messages: 2 818


Le PIRE des défauts, ne pas RECONNAÎTRE une erreur


Voir le profil WWW
« le: Mer. 18 Mars 2015 à 20:53:13 »

Bonjour / Bonsoir à toutes et tous, vous ne le savez probablement pas, mais php est un Langage qui a beaucoup évolué et qui, malgré tous les râleurs, est toujours très largement exploité, notamment bien évidemment dans nos Sites ?


Je ne sais si certains ont déjà eu quelques soucis de connexion à leurs Bases de Données, mais les récentes Versions font que...

De fait, les fonctions conventionnelles "mysql_gnagnagna" sont donc toutes obsolètes, remplacées en grande partie par "mysqli_gnagnagna" avec une syntaxe un peu différente sinon plus complète quant aux arguments (Variables...) à faire avaler ?
Mais SURTOUT la gamme "PDO" est arrivée, orientée notoirement "programmation objet" avec tous les avantages qui en découlent, mais surtout s'adressant à un panel bien plus large quant aux formats des DBs puisque nous pouvons accéder en plus à "PostgreSQL" et "Oracle", "mysqli_" ne s'adressant toujours qu'au format "MySQL" !


En conséquence, il conviendra donc de mettre à jour si nécessaire le fichier "WIForm.php" chez vos hébergeurs en modifiant la ligne adéquate ?


Quant au "pack" de JSCXs dédiés aux Accès, Créations, Ajouts, Modifications, Suppressions de Bases de Données, Tables, Champs et/ou Contenus directement depuis les Pages de vos Sites en Janvier 2013, l'ensemble a été mis à jour, incluant un choix supplémentaire pour les paramètres puisque les trois possibilités sont accessibles selon les Versions chez votre hébergeur et vos types de Bases de Données ?

Néanmoins et pour l'instant, si les "basiques" fonctionnent tous parfaitement, l'ensemble n'a pas encore été totalement testé en "PDO"...

Enfin, la possibilité de s'adresser à X DBs et/ou Y Tables dans la même Page reste maintenue, de même que le fichier unique pour l'ensemble du Site quant aux paramètres de connexion, toujours pour X DBs et/ou Y Tables, ce afin d'économiser la place chez votre hébergeur !


Voilà voilà, bien cordialement, Yvanoph---

Journalisée

La théorie, c'est quand on sait tout mais qu'absolument rien ne fonctionne !

La pratique, c'est quand tout fonctionne "farpaitement" sans vraiment savoir pourquoi, ni d'ailleurs  chercher à comprendre...

Chance inouïe, ici théorie et pratique fonctionnent  !
yvanoph
Administrator
Hero Member
*****
Hors ligne Hors ligne

Messages: 2 818


Le PIRE des défauts, ne pas RECONNAÎTRE une erreur


Voir le profil WWW
« Répondre #1 le: Sam. 04 Avril 2015 à 21:11:31 »

S'il vous arrive de ne pouvoir vous connecter facilement à vos Bases de Données, la MaJ (Mise à jour) est fort simple !


D'ailleurs il y a de quoi se poser bien des questions à voir toujours employer des fonctions OBSOLETES dans nos programmes ? ? ? En effet, les "nouvelles" fonctions sont applicables depuis la Version 4.1.3, autant dire que ça date déjà de quelques années, non ?

Lien : Début d'application des nouvelles fonctions php pour accéder à MySQL !


De fait, récupérer par FTP votre fichier ws.php et l'éditer de préférence dans NotePad++ ?

Chercher la ligne :

$link=mysql_connect($server,$account,$pwd)or die('$ERR Impossible de se connecter au serveur.');

et la commenter par //      pour obtenir :

//   $link=mysql_connect($server,$account,$pwd)or die('$ERR Impossible de se connecter au serveur.');

De même chercher :

mysql_selectdb($database)or die('$ERR Impossible de se connecter à la base.');

et commenter de la même façon pour obtenir :

//   mysql_selectdb($database)or die('$ERR Impossible de se connecter à la base.');


Astuce :  Le fait de "commenter" ainsi une ligne de Code en php comme en JavaScript rend cette ligne NON utilisée par le programme !
D'ailleurs dans NotePad++ vous noterez que les mots clefs des fonctions perdent bien évidemment leur couleur vive propre...
D'où le changement de couleur ci dessus, devenu quasiment illisible comme dans l'éditeur ?

Puis rajouter :

$link=new mysqli($server,$account,$pwd,$database);

car il faut quand même bien lui donner une valeur à cette variable, non ?


Enfin un peu plus bas, identifier :

else print '$ERR '.mysql_errno($link).' : '. mysql_error($link);,

commenter pour obtenir :

//   else print '$ERR '.mysql_errno($link).' : '. mysql_error($link);

puis rajouter :

   else if($link->connect_errno){
      echo "Echec lors de la connexion à MySQL : (".$link->connect_errno.") ".$link->connect_error;
   };



Et pour vérifier le BON fonctionnement de cette modification de base, rajouter :

echo $link->host_info . "\n";

que vous pourrez conserver pour des contrôles ultérieurs en commentant :

//   echo $mysqli->host_info . "\n";


ATTENTION, dans le cas d'une connexion via TCP/IP, il ne sera pas possible de l'ouvrir avec le nom de "localhost", auquel cas le remplacer par le générique classique "127.0.0.1" et hop, au boulot !

Ou votre propre IP, sous réserve d'en avoir autorisé les droits d'accès, bien évidemment ?

Par contre, n'ayant jamais paramétré une IP en Variable dans XWebDesignor sous l'Onglet "Propriétés du Site => Publication => MySQL => Serveur SQL :" puisque passant par mes propres Boutons depuis des lustres, à vérifier ?


Ah, j'allais oublier... Tant que vous y êtes, chercher au début :

$database=getField("WS_database");;

et SUPPRIMER le deuxième point-virgule INUTILE ? Depuis l'origine...


Et si vous craignez de vous tromper, juste faire un copié/collé du texte ci dessous ?


Bien cordialement, Yvanoph---

Journalisée

La théorie, c'est quand on sait tout mais qu'absolument rien ne fonctionne !

La pratique, c'est quand tout fonctionne "farpaitement" sans vraiment savoir pourquoi, ni d'ailleurs  chercher à comprendre...

Chance inouïe, ici théorie et pratique fonctionnent  !
Tags: XWebDesignor: MaJ XWD: MaJ XWebDesignor: Mise à jour php XWD: Mise à jour php 
Pages: [1]   Haut de page
  Imprimer  
 
Aller à:  

Propulsé par MySQL Propulsé par PHP Powered by SMF 1.1.20 | SMF © 2013, Simple Machines
Soutenir Yvanoph par un Don ?
Boréal - V 1.0 by Yvanoph | Sitemap
XHTML 1.0 Transitionnel valide ! CSS valide !
Page générée en 0.12 secondes avec 21 requêtes.