Probleme PHP

Résolu/Fermé
adriellens Messages postés 171 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 18 décembre 2013 - 8 mars 2011 à 22:27
totofrancois Messages postés 398 Date d'inscription jeudi 19 novembre 2009 Statut Membre Dernière intervention 2 août 2013 - 9 mars 2011 à 15:43
Bonjour,

Je suis débutant en PHP, j'ai créé un minichat.

Ma première question est: Mon code est-il bon?

ma deuxième question est: Pourquoi en "localhost" ce minichat marche parfaitement, mais que une fois heberge par free, cela m'affiche: "Parse error: syntax error, unexpected '{' in /mnt/154/sdd/d/e/costafan/chat/chat.php on line 22"

Voici le code de ma page
chat.php...


<body>
<div id="chat">

<form action="chat.php" method="post">
<label id="pseudo">Indiquez ici un pseudo</label><input type="text" id="pseudo" name="pseudo" />
<br />
<label id="message"> Ecrivez ici votre message</label><input type="text" id="message" name="message" /><br />
<input type="submit" value="Envoyer" />
</form>

<p class="tout-petit">Chat créé par Adrien</p>
<div id="element_chat">

<?php
if(!empty($_POST['pseudo'])){
if(!empty($_POST['message'])){

try
{

$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);

    

    $req = $bdd->prepare('INSERT INTO minichat(pseudo, message, date) VALUES(:pseudo, :message, NOW())');
$req->execute(array(
	'pseudo' => $_POST['pseudo'],
	'message' => $_POST['message'],
	));

echo 'le message à bien été enregistré!';
}

catch(Exception $e)
{
    die('Erreur : '.$e->getMessage());
}
}
}
?>


<?php
try
{
    // On se connecte à MySQL
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
    
    // On récupère tout le contenu de la table minichat
    $reponse = $bdd->query('SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10');
    
    // On affiche chaque entrée une à une
    while ($donnees = $reponse->fetch())
    {
echo '<p><strong>' . htmlspecialchars($donnees['pseudo']) . '</strong> : ' . htmlspecialchars($donnees['message']) .'<font size="1"> '.$donnees['date'].'</font>'.'</p>'; 

    }
    
    $reponse->closeCursor(); // Termine le traitement de la requête

}
catch(Exception $e)
{
    // En cas d'erreur précédemment, on affiche un message et on arrête tout
    die('Erreur : '.$e->getMessage());
}

?>
</div>
</div>
<div id="marge">
<a href="chat.php" alt="recharger la page" >Recharger la page!</a>
</div>


Merci!

A voir également:

1 réponse

totofrancois Messages postés 398 Date d'inscription jeudi 19 novembre 2009 Statut Membre Dernière intervention 2 août 2013 44
8 mars 2011 à 23:01
le php de free n'est pas le même que sur ton pc !

par défaurt les compte free sont en php4 , il faut faire un ".htaccess" pour dire d'utiliser le php 5

et même en php5 pas sur que pdo soit installé

si ton code fonctionne en local ya pas de raison qu'il soit faut !
1
Utilisateur anonyme
8 mars 2011 à 23:02
Oui, en effet, quelques fonctionnalité ont été désactivé sur Free
0
totofrancois Messages postés 398 Date d'inscription jeudi 19 novembre 2009 Statut Membre Dernière intervention 2 août 2013 44
8 mars 2011 à 23:08
par contre le bon vieu code mysql_connect et tout le reste fonctionne bien !
0
adriellens Messages postés 171 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 18 décembre 2013 4
8 mars 2011 à 23:20
Désolé, mais je ne sais même pas ce qu'est un fichier .htaccess, que dois-je écrire exactement dans le fichier .htaccess et ou dois-je le placer pour dire au serveur d'utiliser le php 5?
0
totofrancois Messages postés 398 Date d'inscription jeudi 19 novembre 2009 Statut Membre Dernière intervention 2 août 2013 44
9 mars 2011 à 00:58
ce fichier est a placer à la racine du ftp

il faut saisir une variable du genre PHP_ENV = 5

https://forums.commentcamarche.net/forum/affich-11603431-activer-php5-chez-free
0
adriellens Messages postés 171 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 18 décembre 2013 4
9 mars 2011 à 13:42
voila, ma page s'affiche, mais il me renvoie toujours une erreur qui est cette fois:

Erreur : could not find driver

dans mon fichier chat.php,
j'ai modifie les infos afin qu'il se connecte a la base de données:...

$bdd = new PDO('mysql:host=costafan.sql.free.fr;dbname=costafan', 'costafan', 'mon_pass', $pdo_options);
0