Balise <?php ?> ne marche pas

Fermé
Wtev_fl - Modifié le 23 avril 2020 à 16:38
Landreau450 Messages postés 17 Date d'inscription jeudi 19 juillet 2018 Statut Membre Dernière intervention 2 mai 2020 - 2 mai 2020 à 11:45
Bonjour,
je suis débutante et mon but est de créer une page ou on remplit un formulaire et on obtient un message de bienvenue. Exemple: Good morning Mr. John Smith, welcome to ...
J'ai donc crée 2 fichiers. Un fichier html contenant le formulaire et un script php contenant l'action du formulaire.
Dans le fichier php j'alterne des blocs de php et de html. Les balises <?php et ?> ne marche pas du tout qui fait que le code php n est pas interprété. Voici mon code:
<?php

 # retourne la chaîne '$s' normalisée
 # (toutes les lettres en minuscule sauf la première)
 function normalize($s) {
  return ucfirst(strtolower($s);
 }
 
 # Teste si les prénom et nom sont bien renseignés et
 # retourne le tableau des messages d'erreurs
 # (tableau vide s'il n'y a pas d'erreur)
 function check_input() {
  $tab_err=array();
  $prenom = $_POST['prenom'];
  $nom = $_POST['nom'];

  if((Empty($nom)) || (Empty($prenom))){
   array_push($tab_err, "Err:Information manquantes:" ."\n");
   if(Empty($prenom))
    array_push($tab_err,"Prenom manquant");
   else
    array_push($tab_err,"Nom manquant");

  }
  return $tab_err;
  }
 
 # retourne le code HTML (une chaîne de caractères) 
 # d'une liste "<ul><li>..</li>..</ul>", les
 # éléments de liste contenant les erreurs
 # contenues dans le tableau '$errors' 
 function display_errors($errors) {
  foreach ($errors as $i ) {
   $erreur=implode(",", $i)
    $s_err = "<ul><li>$erreur</li></ul>";
  }
  return $s_err;
 }

 # retourne le code HTML (une chaîne de caractères) 
 # d'un heading "<h2>...</h2>" contenant le message
 # de bienvenu en anglais
 function display_welcome($h,$c,$p,$n) {
  return "Good $h $c $p $n, welcome !";
 }

?>
<!DOCTYPE html>
<html lang="fr">
 <head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <title>TP 1 - Exo 9</title>
  <meta name="author" content="Marc Gaetano">
  <meta name="viewport" content="width=device-width; initial-scale=1.0">
  <link rel="stylesheet" href="css/tp1.css">
 </head>
 <body>
  <h1>TP 1 - Exo 9</h1>
  <hr>

  <?php
  $verif = check_input();
  if(Empty($verif)){
  $heure = date('G');
  if($heure<12)
   $periode="morning";
  elseif(($heure>=12)&&($heure<18))
   $periode ="afternoon";
  elseif(($heure>=18)&&($heure<24))
   $periode = "evening";

  $civ = $_POST['civilite'];
  $nom =$_POST['nom'];
  $prenom = $_POST['prenom'];

  $resultat = display_welcome($periode,$civ,$prenom,$nom);
  normalize($resultat);
 }
 else{
  display_errors(verif);
 }
 ?>

 </body>
</html>


Configuration: Windows / Chrome 81.0.4044.122
A voir également:

3 réponses

jee pee Messages postés 40463 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 20 novembre 2024 9 422
Modifié le 23 avril 2020 à 15:59
Bonjour,

Juste une observation toute bête, tu exécutes où ton php ? Sur un serveur hébergé, ou sur ton pc ? Dans ce dernier cas, as-tu installé un serveur apache + un serveur php , sont-ils bien lancés ? Et comment lances tu ton php, juste en cliquant dessus ou dans le navigateur avec une url
localhost/toncode.php
, le source étant évidemment placé dans la racine d'apache.

0
Bonjour j'ai installé easyPHP Devserver sur mon pc. Je l'ai lancé avant de commencer. J’exécute le code php avec un url localhost/chemin sur chrome.
Je n'ai pas eu de pb a exécuter d'autres script php.
0
yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024 Ambassadeur 1 551
23 avril 2020 à 15:58
bonjour, il est préférable de commencer par un script php plus simple.
<?php echo '<p>Bonjour le monde</p>'; ?>

tu ne nous dit rien de ton environnement, des logiciels que tu as mis en place pour exécuter le code php.
0
Bonjour
j'ai installé easyPHP Devserver sur mon pc. Je l'ai lancé avant de commencer. J’exécute le code php avec un url localhost/chemin sur chrome.
J'ai écrit plusieurs script avant celui ci. Je n'ai pas eu de pb a les executer.
0
yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024 1 551 > Wtev_fl
23 avril 2020 à 16:03
et donc le navigateur affiche la source du code php?
0
Wtev_fl > yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024
23 avril 2020 à 16:06
Le navigateur m'affiche des erreurs. Par exemple a la ligne 12 il ne reconnait pas "function" donc le code php n'a pas été interprété
0
yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024 1 551 > yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024
23 avril 2020 à 16:08
ou bien le code php est interprété, mais ne produit pas le résultat que tu attends?
quel résultat attends-tu? quel résultat obtiens-tu?
je ne vois pas quelle instruction tu utilises pour afficher quoi que ce soit dans ce script.
0
yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024 1 551 > Wtev_fl
23 avril 2020 à 16:10
quel est le message d'erreur exact?
ne manque-t'il pas une parenthèse en ligne 6?
0
Landreau450 Messages postés 17 Date d'inscription jeudi 19 juillet 2018 Statut Membre Dernière intervention 2 mai 2020
Modifié le 2 mai 2020 à 11:48
Bonjoir, où as-tu mis ton code PHP? dans quel répertoire ?




[LIEN SUPPRIME PAR LA MODERATION ... pas de pub !! ]
0