Affichage web d'un programme en php

Fermé
Tanguy - 14 avril 2011 à 14:59
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 - 15 avril 2011 à 09:28
Bonjour,
J'ai ecris un programme php, mais l'exécution sur la page web il y est affiché aussi ce code:

".$prod."\n"; } echo ""; echo ""; ?>

Alors je vous transmettre tous le programme et vous allez m'aider à deceler l'erreur. Voici le programme.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body {
background-color: #CCCC99;
}
-->
</style></head>

<body>
<center>
<?



$test=$_POST['test'];
$connexion = mysql_connect("localhost","root","")
or die ("probleme de connection");
$db = mysql_select_db("chimie",$connexion)
or die ("probleme de selection de base de donnée");


if ($test=="")
{
?><h2>selestionner le type d'article </h2>
<form action="ajoutstock.php" method="POST"><select name="test">
<option value="Ré">Réactifs
<option value="Co">Consommables
<option value="Pi">Pièces détachées
</select>
<input type="submit" value="choisissez un article"></form><?
}
if ($test!="")
{
?>
<h2>selestionner le produit </h2>
<?
$rq="SELECT DISTINCT prod FROM stock WHERE temp3='$test' ";
$result=mysql_query($rq)
or die ("requete impossible");
echo "<form action='ajoutstocke.php' method='POST'><select name='prod'>\n";

while ($ligne=mysql_fetch_array($result))
{
extract($ligne);
if ($prod<>"")

echo "<option value='$prod'>$prod\n";

}
echo "</select>";
echo "<input type='submit'".
"value=\"valider\"></form>";
}
?>
</center>

</body>
</html>

S'il vous plait, testez le programme sur votre écran quand ça marche , transmettez le moi. Merci d'avance
A voir également:

3 réponses

Bonjour

if ($prod<>"")
à remplacer par
if ($prod!="")

Je ne suis pas sûr que ça explique tout, mais il y a au moins ça
0
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
15 avril 2011 à 09:22
Bonjour,

Votre serveur exige d'utiliser <?php au lieu de <? et ça devrait marcher.

Sinon, je vois dans le code:

<center>

Il ne faut plus utiliser CENTER. C'est un élément obsolète. Les préconisations du nouveau standard HTML5 recommandent de mettre en style tout les éléments et attributs qui gèrent la présentation à l'écran, exemple de code corect:

<div style='text-align: center;'>...mon texte à centrer...</div>


ou

<p style='text-align: center;'>...mon texte à centrer...</p>


Oualà.
0
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
15 avril 2011 à 09:28
re-bonjour,

Autre chose, erreur fréquente en débutant PHP, votre code:

if ($test=="") {
?><h2>selestionner le type d'article </h2>
<form action="ajoutstock.php" method="POST"><select name="test">
<option value="Ré">Réactifs
<option value="Co">Consommables
<option value="Pi">Pièces détachées
</select>
<input type="submit" value="choisissez un article"></form><?
} 


Il faut éviter de passer de php -> html -> php -> html avec des imbrications qui déstructurent la présentation et la cohérence.

J'explique.

Soit votre page contient du HTML et fait appel à PHP, soit votre page ne contient que du php.

Dans le premier cas, on s'attachera à utiliser php comme "moteu de template". Voici la présentation que je recommande:

....ici code HTML....
   <?php if ($test==""): ?>
     <h2>selestionner le type d'article </h2>
     <form action="ajoutstock.php" method="POST">
       <select name="test">
         <option value="Ré">Réactifs</option>
         <option value="Co">Consommables</option>
         <option value="Pi">Pièces détachées</option>
       </select>
       <input type="submit" value="choisissez un article">
    </form>
  <?php endif; ?>
...suite du code HTML...


Indentez votre code HTML proprement comme vous indentez le php. Fermez vos structures, <option>....</option> par exemple.

A+
0