Passage à PHP 5.4 chez 1and1
Comment s'y prendre

Tags
PHP
Réseaux sociaux


 Discussion forum

Le , par Freedolphin, Membre actif
Si vous êtes client chez l'hébergeur 1and1, vous avez probablement reçu un email vous prévenant du passage obligatoire des serveurs à PHP 5.4 le 1er avril 2013. Ce n'est pas une blague mais bel et bien l'initiative de 1and1 de mettre à jour ses serveurs sur la dernière version de PHP. Si vous avez souhaité anticiper cette mise à jour, vous avez peut-être basculé vous-même votre hébergement sur PHP 5.4. Et là, c'est le drame : requêtes truffées d'erreur, affichage incomplet, bref site en vrac. Pas de panique : voici comment procéder.

1/ Préférez le fichier .htaccess
Si vous avez plusieurs sites sur le même hébergement, ne passez pas tout d'un coup sur la dernière version de PHP. Allez-y site par site, en installant un fichier nommé .htaccess à la racine du site. Puis collez dans le fichier les lignes suivantes :
Code :
1
2
AddType x-mapp-php6 .php 
AddHandler x-mapp-php6 .php
2/ Modifiez vos paramètres de configuration à la base
Le mode de connexion à la base de données MySQL est un peu différent.
Voici les informations qui doivent figurer sur votre fichier de configuration, pour permettre de se connecter à la base (entre deux balises php bien sûr) :
Code :
1
2
3
4
5
$serveur='nom du serveur'; 
$user='nom d'utilisateur'; 
$password='mot de passe de connexion'; 
$database='nom de la base'; 
$connexion = mysqli_connect("$serveur", "$user", "$password", "$database");
3/ Modifiez toutes vos requêtes MySQL
Le principal changement avec cette version de PHP (surtout si vous en étiez encore à la version 4), c'est la modifications des fonctions, avec le simple ajout d'une petite lettre : i.
C'est ainsi que vos fonctions de type mysql_xxx deviennent mysqli_xxx.
Code :
1
2
3
4
Exemple :  
$data = mysql_fetch_assoc($requete) 
devient 
$data = mysqli_fetch_assoc($requete)
Autre modification, cette fois sur la requête principale (que ce soit avec select, update ou autre) : vous devez ajouter la variable de connexion dans la requête. Celle-ci prendra donc cette forme :
Code :
$requete = mysqli_query($connexion, "SELECT * FROM matable");
Utilisez la fonction Rechercher/Remplacer de votre éditeur de code pour modifier tous vos fichiers rapidement.

4/ Attention à bien récupérer vos variables
Si malgré tout cela, votre contenu ne s'affiche pas, vérifiez que vos variables passées dans l'URL sont bien récupérées avec $_GET.
Par exemple, si vous récupériez de façon peu rigoureuse l'identifiant de la page avec un simple $id, vous devrez préciser avant cela :
Code :
$id = $_GET['id'];
5/ Mettez à jour votre base MySQL
Les bases de données enregistrées sous MySQL4 ne fonctionneront plus. Il vous faut dupliquer votre base et l'enregistrer sous MySQL5.

Et voilà, il ne vous reste plus qu'à tout mettre à jour par FTP et à vérifier que votre site fonctionne parfaitement. Votre passage à PHP 5.4 s'est déroulé sans accroc.

Sources

le site de 1&1 : http://faq.1and1.fr/scripts/php/13.html


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :
Offres d'emploi IT
CHARGE D'ANALYSE ET DEVELOPPEMENT INFORMATICA (F/H)
CDI
MMA - Pays de la Loire - LE MANS (72000)
Parue le 08/10/2014
Développeur .Net / Architecte H/F
CDI
Paris Attitude - Ile de France - Paris (75002)
Parue le 01/10/2014
Développeur php h/f
Intérim
EXPERTS - Ile de France - Paris (75002)
Parue le 08/10/2014

Voir plus d'offres Voir la carte des offres IT
 
 
 
 
Partenaires

PlanetHoster
Ikoula