déclaration des variables en PHP5

jou85
Invité n'ayant pas de compte PHPfrance

05 août 2008, 14:05

bonjour,
j'ai fait des programmes en php4 où le contenu d'une variable se tranmet correctement d'une page à sa suivante. Depuis l'installation de PHP5, le contenu des mêmes variables est vide.
y a t-il une déclaration propre à PHP5 ?
qu'est-ce qui a eu comme évolution entre PHP4 et PHP5 qui peut provoquer cela?

d'avance merci

jou[/php]

Mammouth du PHP | 843 Messages

05 août 2008, 14:12

serai il possible de voir un peu ton code php...
Pour les grande modification entre PHP4 et 5, tu peu dejà prendre en compte la modification des toutes les syntaxe de definition des superglobales ($_SERVER, $_SESSION...) et la grande avancé de la POO

Le mieux serai de voir un peut ton code quand même... ;)
:: contactez moi par MP ::
:non: NON au language SMS sur les forums :non:

ViPHP
ViPHP | 3300 Messages

05 août 2008, 14:56

les principaux changements (te concernant) sont des configurations par défaut qui sont différentes, je pencherais pour ça, un register_globals à off alors que ton code est coedé pour du "on". si c'est le cas je te conseille fortement de changer ton code plutot que de changer la conf, histoire d'éviter les mauvaises pratiques et d'etre compatible php6 ca en php6 il n'y aura plus de register globals du tout
Fait du php depuis que ca existe ou presque :)

jou85
Invité n'ayant pas de compte PHPfrance

06 août 2008, 09:55

Bonjour et merci beaucoup pour to aide,
en effet regsiter_globals est à ON en 4 et OFF en 5. je suis prêt à adapter mon code, mais quelles adaptations y apporter? si tu as des pistes, je suis preneur.
merci d'avance

les principaux changements (te concernant) sont des configurations par défaut qui sont différentes, je pencherais pour ça, un register_globals à off alors que ton code est coedé pour du "on". si c'est le cas je te conseille fortement de changer ton code plutot que de changer la conf, histoire d'éviter les mauvaises pratiques et d'etre compatible php6 ca en php6 il n'y aura plus de register globals du tout

jou85
Invité n'ayant pas de compte PHPfrance

06 août 2008, 10:02

Bonjour et merci pour ton aide.
je t'envoie mon code qui est en 2 fichiers sai_lig1 qui enchaine sur sai_lig2.
sai_lig1:
<HTML>

<!-- Début entête de page HTML -->
<HEAD>
	<!-- Titre de la fenêtre sous le navigateur -->
	<TITLE> Saisie des lignes téléphoniques </TITLE>

<script language='JavaScript'>

	function valider(thisForm)
	{
    		if(thisForm.s_num.value == '')
    		{
         		alert('Le Numéro de téléphone est obligatoire');
         		thisForm.s_num.focus();
         		return false;
    		}
    		if(thisForm.s_empl.value == '')
    		{
         		alert('Emplacement du téléphone est obligatoire');
         		thisForm.s_empl.focus();
         		return false;
    		}
    		return true;
	}
</script>
</HEAD>

<!-- Début corps de page HTML -->
<BODY BGCOLOR="#FFF9E1">
	<table border="2" align="center" cellpadding="2" cellspacing="1" >
	<FORM METHOD="POST" onSubmit='return valider(this)' ACTION="sai_lig2.php" NAME="FORMULAIRE">

	<tr bgcolor="#DDD8AF">
	  	<td colspan="2" align="center" height="30"><B><font face="Arial" size=4><center>
		  Saisie des lignes téléphoniques  </B></font></td>
	</tr></table><br>
	<!-- hr align=center size=5 width=80%-->

<?php
		print "<table border=2 align=center cellpadding=2 cellspacing=0>";

		print "<tr>";
		print "<td width=150 height=30 bgcolor="#80F8AF">Numéro : </td>";
		print "<td width=200 align=left bgcolor="#DDD8AF"><INPUT TYPE=text NAME="s_num" SIZE=10></td>";
		print "</tr>";

		print "<tr>";
		print "<td width=150 height=30 bgcolor="#80F8AF">Emplacement : </td>";
		print "<td width=200 height=30 bgcolor="#DDD8AF"><input type=text NAME="s_empl" SIZE=50></td>";
		print "</tr>";

		print "<tr>";
		print "<td width=150 height=30 bgcolor="#80F8AF">Adresse : </td>";
		print "<td width=200 height=30 bgcolor="#DDD8AF"><input type=text NAME="s_adr" SIZE=60></td>";
		print "</tr>";

		print "<tr>";
		print "<td width=150 height=30 bgcolor="#80F8AF">Mois de facturation : </td>";
		print "<td width=200 align="LEFT" bgcolor="#DDD8AF">";
		print "<SELECT name="s_mois" size=1>";
		print "<OPTION>1 : janvier, mars, mai, juillet, septembre, novembre";
		print "<OPTION>2 : février, avril, juin, août, octobre, décembre";
		print "</SELECT>";
		print "<tr>";

		print "<tr>";
		print "<td width=150 height=30 bgcolor="#80F8AF">Type de ligne : </td>";
		print "<td width=200 align="LEFT" bgcolor="#DDD8AF">";
		print "<SELECT name="s_typlig" size=1>";
		print "<OPTION>RTC : ligne analogique";
		print "<OPTION>ADS : ligne internet";
		print "<OPTION>NUM : Numéris (lignes écoles)";
		print "</SELECT>";
		print "<tr>";

		/* Connexion à la base*/
		mysql_connect("localhost","root","");
		mysql_select_db("telephone");

		$req="select * from typins order by ts_type;";

		$res=mysql_query($req);
		$nb1=mysql_num_rows($res);

		if ($nb1 >0)
		{
			print "<tr>";
			print "<td width=150 height=30 bgcolor="#80F8AF">Type instal : </td>";
			print "<td width=200 align="LEFT" bgcolor="#DDD8AF">";
				print "<select NAME="s_typins" SIZE="1">";
			$i=0;
			while ($i<$nb1)
			{
				$se_code=mysql_result($res,$i,"ts_type");
				$se_nom=mysql_result($res,$i,"ts_libelle");
				print "<option>$se_code  :  $se_nom";
			$i++;
			}
			print "</tr>";
		}

		$nb1=0;
		$req1="select * from typbat order by tb_type;";
		$res1=mysql_query($req1);
		$nb1=mysql_num_rows($res1);

		if ($nb1 >0)
		{
			print "<tr>";
			print "<td width=150 height=30 bgcolor="#80F8AF">Type bâtiment : </td>";
			print "<td width=200 align="LEFT" bgcolor="#DDD8AF">";
				print "<select NAME="s_typbat" SIZE="1">";
			$i=0;
			while ($i<$nb1)
			{
				$se_code=mysql_result($res1,$i,"tb_type");
				$se_nom=mysql_result($res1,$i,"tb_libelle");
				print "<option>$se_code  :  $se_nom";
			$i++;
			}
			print "</tr>";
		}

		print "<tr>";
		print "<td width=150 height=30 bgcolor="#80F8AF">Observation : </td>";
		print "<td width=200 height=30 bgcolor="#DDD8AF"><input type=text NAME="s_obs" SIZE=50></td>";
		print "</tr>";

?>
		<table border="3" align="center" cellpadding="2" cellspacing="1">
		<tr bgcolor="#DDD8AF">

	  	<td width="145" height="30" align="center"><input type="submit" value="Valider"></td>
		<td width="145" height="30" align="center"><input type="reset" value="Annuler"></td>
		</tr></table><br>

<td width=145 align=center ><a href="index.php"<b><b>Retour au menu</b></td>
	</FORM>

<!-- Fin corps de page HTML -->
</BODY>

<!-- Fin page HTML -->
</HTML>


[b]sai_lig2:[/b]


<HTML>

<!-- Début entête de page HTML -->
<HEAD>
	<!-- Titre de la fenêtre sous le navigateur -->
	<TITLE>Saisie des Saisie des lignes téléphoniques </TITLE>

</HEAD>

<!-- Début corps de page HTML -->
<BODY BGCOLOR="#FFF9E1">
	<table border="2" align="center" cellpadding="2" cellspacing="1" >
	<tr bgcolor="#DDD8AF">
	  	<td colspan="2" align="center" height="30"><B><font face="Arial" size=4><center>
		Saisie des Saisie des lignes téléphoniques  </B></font></td>
	</tr></table><br>
	<!-- hr align=center size=5 width=80%-->

<?php
		print "<table border=2 align=center cellpadding=2 cellspacing=0>";
		$mois=substr($s_mois,0,1);
		$typlig=substr($s_typlig,0,3);
		$typins=substr($s_typins,0,1);
		$typbat=substr($s_typbat,0,4);

		$requete_ins= "insert into ligne values ('$s_num','$s_empl','$s_adr','$mois','$typlig','$typins','$typbat','$s_obs');";

		/* Connexion à la base*/
		mysql_connect("localhost","root","");
		mysql_select_db("telephone");

		/* Récupération du contenu de la table service */
		$resultat_sql=mysql_query($requete_ins);

		if ($resultat_sql)
		{
			print "<b>Ligne   $s_num  enregistrée <BR></b>";
		}
		else
		{
			print "<b>Ligne   $s_num non enregistrée <BR></b>";
		}

	print "</table><br>";
	mysql_close();
?>
		<table border="3" align="center" cellpadding="2" cellspacing="1" >
		<tr bgcolor="#DDD8AF">
	  	<td width=145 align=center ><a href="sai_lig1.php"<b><b>Nouvelle ligne</b></td>
	  	<td width=145 align=center ><a href="index.php"<b><b>Retour au menu</b></td>
		</tr></table>

		<!--tr bgcolor="#A62A2A"-->

	</FORM>

<!-- Fin corps de page HTML -->
</BODY>

<!-- Fin page HTML -->
</HTML>
serai il possible de voir un peu ton code php...
Pour les grande modification entre PHP4 et 5, tu peu dejà prendre en compte la modification des toutes les syntaxe de definition des superglobales ($_SERVER, $_SESSION...) et la grande avancé de la POO

Le mieux serai de voir un peut ton code quand même... ;)

ViPHP
ViPHP | 5924 Messages

06 août 2008, 11:36


Mammouth du PHP | 843 Messages

06 août 2008, 12:25

tout à fait ... regarde du coté de register globals comme Sékiltoyai te l'a présisé
:: contactez moi par MP ::
:non: NON au language SMS sur les forums :non: