php 4 vs php 5 => comptatible???

Eléphant du PHP | 289 Messages

16 févr. 2006, 10:19

Bonjour tout le monde,

J'ai un souci avec toutes les pages que j'ai developpées qd je les fais tourner sur le serveur de l'entreprise.

Moi, j'ai tout developpé avec la config suivante:
easyphp 1.7
apache 1.3.27
php 4.3.3
phpmyadmin 2.5.3
mysql 4.0.15

config serveur:
php 5.1.1
apache 1.3.34
mysql 5.0.17
mysqli 5.0.17

Qd je fais tourner une page, j'ai l'impression que ca coince au niveau des fonctions mysqli.

est ce que quelqu'un a deja eu ce type de pb?

mezrci de votre aide,
FAb
je dois être la seule souris au monde qui ne fait pas peur aux néléphants ! :=)

Mammouth du PHP | 19672 Messages

16 févr. 2006, 10:38

php4 ne supporte pas les fonctions mysqli : il est possible d'autre part que sur ton serveur d'entreprise, php5 soit configuré avec mysqli et pas avec mysql : ça signifie que tu dois modifier toutes les fonctions mysql_xyz en mysqli_xyz ou bien, si tu en as la possibilité activer la prise en charge par PHP5 de mysql_ en décommentant la directive dans le php.ini.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 289 Messages

16 févr. 2006, 11:55

salut Cyrano

En ajoutant un "i" a la fin de chaque fonctions mysql ca risque de marcher?

Sinon, j'ai acces au fichier php.ini sur le serveur. c'est a quel endroit que je peux "activer" le mysql?
est ce que le mysl et mysqli peuvent fonctionner en meme tps?

merci bcq,
FAb
je dois être la seule souris au monde qui ne fait pas peur aux néléphants ! :=)

Mammouth du PHP | 19672 Messages

16 févr. 2006, 11:57

Regarde les lignes des extensions dans le php.ini, il y a des liens vers les dlls : celle vers php_mysqli.dll doit être décommentée, mais la ligne juste au dessus devrait être php_mysql.dll et elle est probablement commentée par un ";" : vire le ";" et redémarre Apache pour que ce soit pris en compte puis teste tes pages.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
fab
ViPHP | 2657 Messages

16 févr. 2006, 13:00

c'est un peu hors sujet mais bon :)
pour ceux qui travaille sur php5 mais qui n'ont pas la chance d'avoir un hébergeur en php5 il existe une librairie vraiment trs simpa c'est PHP COMPAT de pear :)
Seul l'intelligent a le pouvoir de se trouver con
try { work(); } catch(FlemmeExeption $e) { sleep(84600); }

Eléphant du PHP | 289 Messages

21 févr. 2006, 14:51

bonjour,

l'admin n'est pô la de la semaine :?
Je te dis si ca fonctionne bien des qu'il rentre :wink:

merci
FAb
je dois être la seule souris au monde qui ne fait pas peur aux néléphants ! :=)

Eléphant du PHP | 254 Messages

05 mars 2006, 16:31

une des meilleurs choses a faire avec tes classes MySQL pour la gestion des 2 versions (mysql/mysqli) est de faire une classe mere "d'encaspulation" entre les 2 versions et ensuite de charger la version mysql ou mysqli suivant la demande ou ton besoin qui va redefinir les methodes de la classe mere !

ceci te permettra de gagner enormement de temps sur les gros developpement .


--------------

cyrano : tu ne peux pas avoir les 2 DLL (mysql+mysqli) sur la meme version de PHP : ca plante !

Mammouth du PHP | 19672 Messages

05 mars 2006, 17:22

une des meilleurs choses a faire avec tes classes MySQL pour la gestion des 2 versions (mysql/mysqli) est de faire une classe mere "d'encaspulation" entre les 2 versions
C'est une méthode, mais il y a plus simple : installer la libmysql.dll dans le PATH de configuration système et les deux fonctionneront indifféremment. Attentoins toutefois à la version : s'il cette librairie est déjà présente, en vérifier la version et remplacer par la dernière, j'ai eu quelques problèmes avec ça dernièrement.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

05 mars 2006, 20:23

Ou même l'inverse: ajouter à PATH le chemin vers ton installation de PHP. Perso c'est ce que je fais, parce que ça évite de se prendre la tête à mettre à jour les dll à chaque mise à jour dans PHP.