Connection bdd sur free

Fermé
sunev - Modifié le 14 avril 2017 à 17:18
jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 - 14 avril 2017 à 18:47
Bonjour,


j'ai recuperé un minichat qui fonctionne tré bien en local
(localhost, root, "")

mais dés que je le met sur mon site en ligne avec free
j'ai cette erreur qui s'affiche

Parse error: syntax error, unexpected '{' in /mnt/169/sda/0/c/monsite/minichat.php on line 27

minichat.php
    <body>
   <form action="minichat_post.php" method="post">
        <p><label for="pseudo">Pseudo</label> : <input type="text" name="pseudo" id="pseudo" /><br />
        <label for="message">Message</label> :  <input type="text" name="message" id="message" /><br />
        <input type="submit" value="Envoyer" />
    </p></form>

<?php
// Connexion à la base de données
<underline><bold>LIGNE 27 ICI</bold></underline>
try {
    $bdd = new PDO('mysql:host=sql.free.fr; dbname=test;charset=utf8', 'monsite', 'xxxxxxxx');
}
catch(Exception $e)  {
        die('Erreur : '.$e->getMessage());  
}
// Récupération des 10 derniers messages
$reponse = $bdd->query('SELECT pseudo, message FROM minichat ORDER BY ID DESC LIMIT 0, 10');
// Affichage de chaque message (toutes les données sont protégées par htmlspecialchars)
while ($donnees = $reponse->fetch())
{
    echo '<p><strong>' . htmlspecialchars($donnees['pseudo']) . '</strong> : ' . htmlspecialchars($donnees['message']) . '</p>';
}
$reponse->closeCursor();
?> </body>



deuxieme fichier du minichat "minichat_post.php"
trouvé sur
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/914663-tp-un-minichat

<?php
// Connexion à la base de données
try {
    $bdd = new PDO('mysql:host=sql.free.fr;dbname=test;charset=utf8', 'monsite', 'xxxxxxx');
}
catch(Exception $e) {
        die('Erreur : '.$e->getMessage());
}
// Insertion du message à l'aide d'une requête préparée
$req = $bdd->prepare('INSERT INTO minichat (pseudo, message) VALUES(?, ?)');
$req->execute(array($_POST['pseudo'], $_POST['message']));
// Redirection du visiteur vers la page du minichat
header('Location: minichat.php');
?>


c'est apparemment une erreur de syntaxe, laquelle?
Si quelqu'un a une idée elle sera la bienvenue, moi je comprends pas pourquoi en local ça fonctionne et pas sur le serveur free.
Merci de me repondre




A voir également:

1 réponse

jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 4 689
14 avril 2017 à 18:47
Bonjour,

Je pense que chez free c'est toujours la version php4 qui est utilisée.
il me semble que pour activer php 5 il faut créer un fichier .htaccess et y mettre : "php 1" (sans les guillemets)

Voir même php 5.6
pour ça voir ici : http://additifstabac.free.fr/index.php/deploiement-php-5-6-8-beta-serveurs-pages-perso-free/
0