Soucis affichage d'une page php dans une page php

Petit nouveau ! | 2 Messages

07 févr. 2010, 16:39

Bonjour à tous , je vous pose mon probleme.

J'ai créé une page php avec un formulaire simple : Couleur, Objet.
4 possibilités pour ces 2. Lorsque je clic sur OK dans ce menu (gauche), j'aimerais pouvoir visualiser dans la 2e fenetre créé ( à droite) ces objets.
Pour l'instant j'ai réussi à afficher les bonnes valeurs dans ces fenètres avec :

Code : Tout sélectionner

<?php echo '<p>Votre objet est : ' . htmlspecialchars($_POST['objet']) . '</p>'; ?> <?php echo '<p>Votre couleur est : ' . htmlspecialchars($_POST['couleur']) . '</p>'; ?>
Mais lorsque je veux afficher cet objet en vrml dans cette fenetre, il s'affiche le code php dans la fenetre.

Code : Tout sélectionner

<?php include "objet.php"; ?>

J'ai essayé aussi require, mais c'est pire.

Cependant si dans le code du formulaire je met comme target "objet.php", une nouvelle fenetre s'ouvre et affiche le bon objet e la bonne couleur en vrml.

Pour résumer j'ai deux fichiers php :
le premier avec disposition de la fenetre (une a gauche une a droite), formulaire.
le second avec un code vrml.

Pour ceux qui ont compris, y'a t'il une solution simple, pour que tout soit bien dans une seule et meme fenêtre :)

Merci

Mammouth du PHP | 558 Messages

07 févr. 2010, 17:47

bonjour.
la souris cours dans le pré mais elle n'est dans aucun pré...
tu n'as rien compris je suppose...
et bien tout comme moi avec ton explication lol...

Eléphant du PHP | 453 Messages

07 févr. 2010, 17:51

hello,

@hakazizi -> +1
@dynamix -> peut être un problème de chemin. Au passage, include = inclusion et require = exiger.
La Tux attitude avec les kiw'z syou plait
Komodo Edit - Inkscape - Dia

Petit nouveau ! | 2 Messages

07 févr. 2010, 18:59

Fichier index.php

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>Sommaire !</title> <style type="text/css"> #StyleObjet { position:absolute; background-color:cyan; left:10px; width:100px; } #page { position:absolute; background-color:#AAAAAA; left :350px; width :600px; height:600px; top: 10px; } </style> </head> <body> <?php function choixParDefaut($objet) // Creation de la fonction { $par_defaut = ''; // On cree une variable (vide par defaut) que l'on retournera à la fin if (isset($_POST['objet'])) // Si le visiteur a choisi une couleur { if ($_POST['objet'] == $objet) // Si cette couleur correspond à la couleur que l'on est en train de traiter { $par_defaut='selected="selected"'; // Alors on modifie la variable que l'on retournera et on lui met selected } } return $par_defaut; // On ne retourne rien si ce n'etait pas la couleur choisie, selected si c'etait la bonne couleur } // -------------- Fin de la fonction --------------- ?> <?php function CouleurParDefaut($couleur) // Creation de la fonction { $couleur_defaut = ''; // On cree une variable (vide par defaut) que l'on retournera à la fin if (isset($_POST['couleur'])) // Si le visiteur a choisi une couleur { if ($_POST['couleur'] == $couleur) // Si cette couleur correspond à la couleur que l'on est en train de traiter { $couleur_defaut='selected="selected"'; // Alors on modifie la variable que l'on retournera et on lui met selected } } return $couleur_defaut; // On ne retourne rien si ce n'etait pas la couleur choisie, selected si c'etait la bonne couleur } // -------------- Fin de la fonction --------------- ?> <form method="post"> <p>Quel est votre objet ?<select name="objet"> <option value="Cube" <?php echo choixParDefaut('Cube'); ?>>Le Cube</option> <option value="Sphere" <?php echo choixParDefaut('Sphere'); ?>>La Sphere</option> <option value="Cylindre" <?php echo choixParDefaut('Cylindre'); ?>>Le Cylindre</option> <option value="Cone" <?php echo choixParDefaut('Cone'); ?>>Le Cone</option> </select> </p> <p>Quel est votre couleur ?<select name="couleur"> <option value="Bleu" <?php echo CouleurParDefaut('Bleu'); ?>>Le Bleu</option> <option value="Rouge" <?php echo CouleurParDefaut('Rouge'); ?>>Le Rouge</option> <option value="Vert" <?php echo CouleurParDefaut('Vert'); ?>>Le Vert</option> <option value="Blanc" <?php echo CouleurParDefaut('Blanc'); ?>>Le Blanc</option> </select> </p> <p><input type="submit" value="OK" /></p> </form> <div id="page"> <?php echo '<p>Votre objet est : ' . htmlspecialchars($_POST['objet']) . '</p>'; ?> <?php echo '<p>Votre couleur est : ' . htmlspecialchars($_POST['couleur']) . '</p>'; ?> <?php include "objet.php"; ?> </div> </body> </html>

fichier objet.php

Code : Tout sélectionner

<?php header ("Content-type: model/vrml"); ?> #VRML V2.0 utf8 <?php $nomCa = 1.0;$nomCb = 1.0;$nomCc = 1.0; if ($couleur == "Vert") {$nomCa = 0.0;$nomCb = 1.0;$nomCc = 0.0;} else if ($couleur == "Rouge") {$nomCa = 1.0;$nomCb = 0.0;$nomCc = 0.0;} else if ($couleur == "Bleu") {$nomCa = 0.0;$nomCb = 0.0;$nomCc = 1.0;} else {$nomCa = 1.0;$nomCb = 1.0;$nomCc = 1.0;} ?> <?php if ($objet == "Sphere"){ ?> Transform { children Shape { geometry Sphere {} appearance Appearance { material Material { <?php echo "diffuseColor ", $nomCa ," ", $nomCb," ",$nomCc ?> } } } } <?php } else if ($objet == "Cube"){ ?> Transform { children Shape { geometry Box {} appearance Appearance { material Material { <?php echo "diffuseColor ", $nomCa ," ", $nomCb," ",$nomCc ?> } } } } <?php } else if ($objet == "Cylindre"){ ?> Transform { children Shape { geometry Cylinder {} appearance Appearance { material Material { <?php echo "diffuseColor ", $nomCa ," ", $nomCb," ",$nomCc ?> } } } } <?php } else { ?> Transform { children Shape { geometry Cone {} appearance Appearance { material Material { <?php echo "diffuseColor ", $nomCa ," ", $nomCb," ",$nomCc ?> } } } } <?php } ?>
Pour le moment j'ai fait cela.
Si je rajoute dans le form du formulaire un target vers "objet.php", une nouvelle fenetre s'ouvre et avec les bons attributs.
J'aimerais maintenant que aucune fenetre s'ouvre, mais qu'elle s'affiche dans la mini fenetre de ma premiere page.

Voila, j'espere avoir été plus clair.
Ca serait pour ressembler en gros à ca : http://www.web3d-fr.com/tutoriels/Ateli ... Frames.htm