modif pour passer en php5

Mammouth du PHP | 620 Messages

06 août 2010, 16:13

Bonjour,
sur un script php (qui tourne sous php4) j'ai :
<?= $message; ?>
je passe mon code en php5 et je voudrai donc adapté mon code.
comment dois-je réécrire cette ligne ?
quand c'est juste <? ok je met <?php mais dans le cas ou c'est <?= je sais pas quoi mettre. (d'ailleur si on pouvait m'expliquer le <?= )

ViPHP
ViPHP | 5462 Messages

06 août 2010, 16:14

<?= $message ?>
==
<?php echo $message ?>
http://www.php.net/manual/fr/language.b ... hpmode.php

:wink:

Mammouth du PHP | 620 Messages

06 août 2010, 16:17

Super merci.

du coup afin de ne pas faire d'erreur je remplace bien :
<? if(isset($message)) { ?>
     <p><?= $message; ?></p>
<? } if($masquer_formulaire != true) { ?>



<form id="monForm" action="http://<?= $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">
...
par
 
<? if(isset($message)) { ?>
     <p><?php $message; ?></p>
<? } if($masquer_formulaire != true) { ?>



<form id="monForm" action="http://<?php $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">


Eléphant du PHP | 50 Messages

06 août 2010, 16:22

Il manque encore le echo avant $message et remplacer tous les <? par <?php

ViPHP
ViPHP | 5462 Messages

06 août 2010, 16:28

et pareil pour le $_SERVER il manque le echo

apres t'embetes pas, fais un recherche ramplacer : <?= pas <?php echo

Mammouth du PHP | 620 Messages

06 août 2010, 17:55

ok merci c'est fait. j'ai cependant encore un problème et de taillle !!!.

je suis hebergé chez 1and et par defaut leur serveurs son en php4.
pour passer en php5 ils offre donc la possibilité de la faire en ajoutant dans un fichier htaccess ( se que j'ai fait) :

Code : Tout sélectionner

AddType x-mapp-php5 .php
Le truc c'est que le système d'identification avec session fonctionne très bien en php4 mais depuis que je me suis mis en php5 sa ne fonctionne plus.
il y a qq mois en arrière j'avais déjà tenté de passé de php4 à php5 mais j'avais abandonnée justement à cause de ce problème.
En fait lorsque je rentre mon identifiant et mot de passe si je fais un erreur sa me l'affiche (ça pas de pb sa fonctionne)
par contre si je rentre le bon identifiant et le bon mot de passe je retourne comme prévu sur ma page index mais le soucis c'est que je perd la session et du coup je suis obligé de ressaisir identifiant et mot de passe.... et du cout je tourne en rond car impossible de se connecter du coup.

De quoi penssez vous que celà pourait-il venir ?

je vous met mes sources index et connexion au cas ou quelqu'un pourait m'aider.

ma page index.php :
<?php
session_start();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/admin_model.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- InstanceBeginEditable name="doctitle" -->
<title>Administration du site internet</title>
<link href="style.css" rel="stylesheet" type="text/css" />

<!-- InstanceEndEditable -->
<!-- InstanceBeginEditable name="head" -->
<!-- InstanceEndEditable -->

</head>

<body>
<div id="adminaccueil">
<h1>Administration</h1> 
<h2>| Mon site</h2>

<!-- InstanceBeginEditable name="contenu" -->

<?php if(isset($_SESSION["TB_Nom_Utilisateur"])) 
{ ?>
<ul id='adminmenu'>
  <li><a href="News/gestion-news.php">News</a></li>
  <li><a href="wallpapers/gestion-wallpapers.php">Fonds d'écran</a></li>
</ul>
<p>
     
     <a href="deconnexion.php">Déconnexion</a> | 
     <a href="creer-compte-utilisateur.php">Créer un compte utilisateur</a>
</p>


<?php

			echo 'Vous êtes connecté en tant que : ' .$_SESSION["TB_Nom_Utilisateur"];

?>

<?php } else { ?>
<p>
     | 
     <a href="connexion.php">Connexion</a> |
</p>
<?php } ?>
<!-- InstanceEndEditable -->
</div>
</body>
<!-- InstanceEnd --></html>


ma page connexion :
<?php
session_start();
// Redirige l'utilisateur s'il est déjà identifié
if(isset($_SESSION["TB_Nom_Utilisateur"]))
{
 header("Location: index.php");
}
else
{
     
     // Formulaire visible par défaut
     $masquer_formulaire = false;
     
     // Une fois le formulaire envoyé
     if(isset($_POST["BT_Envoyer"]))
     {
          
          // Vérification de la validité des champs
          if(!ereg("^[A-Za-z0-9_]{2,20}$", $_POST["TB_Nom_Utilisateur"]))
          {
               $message = "Votre nom d'utilisateur doit comporter entre 2 et 20 caractères<br />\n";
               $message .= "L'utilisation de l'underscore est autorisée";
          }
          elseif(!ereg("^[A-Za-z0-9]{6,}$", $_POST["TB_Mot_de_Passe"]))
          {
               $message = "Votre mot de passe doit comporter au moins 6 caractères";
          }
          else
          {
               
               // Connexion à la base de données
               // Valeurs à modifier selon vos paramètres configuration
               mysql_connect("******","******","******");
               mysql_select_db("*******"); 
               
               // Sélection de l'utilisateur concerné
               $result = mysql_query("
                    SELECT ID_Utilisateur, Nom_Utilisateur, Mot_de_Passe, Compte_Active
                    FROM Comptes_Utilisateurs
                    WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "'
               ");
               
               // Si une erreur survient
               if(!$result)
               {
                    $message = "Une erreur est survenue lors de la tentative de connexion";
               }
               else
               {
                    
                    // Si aucun utilisateur n'a été trouvé
                    if(mysql_num_rows($result) == 0)
                    {
                         $message = "Le nom d'utilisateur " . $_POST["TB_Nom_Utilisateur"] . " n'existe pas";
                    }
                    else
                    {
                         
                         // Récupération des données
                         $row = mysql_fetch_array($result);
                         
                         // Si le compte n'a pas été activé
                         if($row["Compte_Active"] == 0)
                         {
                              $message = "Votre compte utilisateur n'a pas été activé";
                         }
                         else
                         {
                              
                              // Vérification du mot de passe
                              if(md5($_POST["TB_Mot_de_Passe"]) != $row["Mot_de_Passe"])
                              {
                                   $message = "Votre mot de passe est incorrect";
                              }
                              else
                              {
                               	//création de session							   
								$_SESSION['TB_Nom_Utilisateur'] = $TB_Nom_Utilisateur; //
								$_SESSION['ID_Utilisateur'] = $ID_Utilisateur; // 
								   
                                   // Fermeture de la connexion à la base de données
                                   mysql_close();
                                   
                                   // Redirection de l'utilisateur
                                   header("Location: index.php");
                              }
                              
                         }
                         
                    }
                    
               }
               
               // Fermeture de la connexion à la base de données
               mysql_close();
               
          }
          
     }
     
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/admin_model.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- InstanceBeginEditable name="doctitle" -->
<title>Administration du site internet</title>
<link href="style.css" rel="stylesheet" type="text/css" />

<!-- InstanceEndEditable -->
<!-- InstanceBeginEditable name="head" -->
<!-- InstanceEndEditable -->

</head>

<body>
<div id="adminaccueil">
<h1>Administration</h1> 
<h2>| Mon site</h2>

<!-- InstanceBeginEditable name="contenu" -->
<?php if(isset($message)) { ?>
     <p><?php echo $message; ?></p>
<?php } if($masquer_formulaire != true) { ?>



<form id="monForm" action="http://<?php echo $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">
		<fieldset>
        <legend>Connexion </legend>
				<label>Nom d'utilisateur</label> <input type="text" name="TB_Nom_Utilisateur" />        
				<label>Mot de passe</label> <input type="password" name="TB_Mot_de_Passe" />
                Connexion automatique <input type="checkbox" name="CB_Connexion_Automatique" />  
				<input type="submit" name="BT_Envoyer" value="Envoyer" />
		</fieldset>
</form>

<?php } ?>




<!-- InstanceEndEditable -->
</div>
</body>
<!-- InstanceEnd --></html>