Problème de compréhension TP

Fermé
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 - 7 mars 2009 à 19:27
 NomDiDiou.. - 8 mars 2009 à 16:21
Bonjour, je dois faire ce TP et il y a une phrase que je ne comprends pas,c'est celle-là: " Le bouton check permet de vérifier l'existence du répertoire. S'il existe, les champs de
saisies sont remplis par défaut Sinon l'utilisateur est averti.
"

Je ne comprends pas le sens de " S'il existe, les champs de
saisies sont remplis par défaut
", ça veut dire que si le répertoire exsite, alors on peut entrer les données dans paramètres? :??:

Je vous mets directement le lien de mon tp: http://guyonst.free.fr/ap/ap-fevrier.pdf"

La phrase en question se trouve à la page 2/4.

Merci de votre aide

12 réponses

Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
7 mars 2009 à 19:44
Je ne comprends pas comment il faut procéder..

Il faut que ça se fasse sur 2 pages, pour la première page, je créer le tableau, après on appuie sur le bouton "check" pour vérifier l'existence du fichier et s'il existe, alors on peut remplir les paramètres puis appuyer sur "générer" qui envoie à la deuxième page qui affichera les images?
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
7 mars 2009 à 19:53
Salut,

Quand on fait clic sur check il peut avoir deux situations

1. le répertoire existe
En ce cas les champs de la rubrique paramètres contiendront le Nom de fichier, etc

alors on peut remplir les paramètres puis appuyer sur "générer"
Donc tu ne remplira rien, c'est le programme qui le fera.

2. le répertoire n'existe pas
En ce cas tu dois trouver un moyen pour avertir l'utilisateur que le répertoire n'existe pas.
Par exemple dans le champ Nom de fichier affichera en rouge, "Le répertoire n'existe pas"

0
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
7 mars 2009 à 19:57
Je voulais faire une condition quand on appuie sur "check", si le fichier n'existe pas, alors ça affiche un message d'erreur ( un simple echo ) et s'il existe, alors on peut appuyer sur "générer" mais je suis perdu, parce que le bouton "check"est un submit normalement et donc si j'appuie dessus, il m'envoie sur une autre page alors que moi je voudrais rester sur la même.. :/
0
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
7 mars 2009 à 20:33
up svp
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
7 mars 2009 à 21:50
Je dois finir et fair eunr apport pour lundi.. :/
0
Nomdidiou !!
7 mars 2009 à 22:01
Slt,

Et si tu utilisais la fonction header() qui te redigirerai sur ta page initiale après avoir examiné ton champ ?.
0
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
7 mars 2009 à 22:24
Elle a l'air un peu compliquée la fonction quand même.. :(

Je pense pas que mon prof veut qu'on utilise une fonction aussi compliquée, il n 'y pas un moyen plus simple?
0
Nomdidiou !!
7 mars 2009 à 22:36
Re,

C'est pas compliqué - TKT - essaye un truc comme ça même si je suis pas un pro du PHP :

// Ton 1er FORM - le "CHECK"

<FORM ACTION="Ta_Page_1.php" METHOD="post">
<INPUT TYPE="submit" NAME="check" VALUE="check">
</FORM>

// Ton 2eme FORM - le "GENERER"

<FORM ACTION="Ta_Page_1.php" METHOD="post">
<INPUT TYPE="submit" NAME="generer" VALUE="generer">
</FORM></CENTER>

// Le code PHP
<?php
// Tu récupère REP_OK en paramètre URL
$REP_OK = $_GET["REP_OK"];

// Si t'a choisi un "CHECK"
if ($_POST ["check"] == "check")
{
//....................................................
// --> Vérifie ici existence du répertoire
//....................................................
// Si c'est OK
if (repertoire_OK)
{
$REP_OK = "1";
// redirection sur cette même page 1 avec REP_OK en paramètre URL
header("Location: Ta_Page_1.php?REP_OK=$REP_OK");
}
// Sinon - affichage message
else
{
echo "Ce répertoire n'existe pas...";
$REP_OK = "0";
}
}

// Si t'a choisi un "GENERER"
if ($_POST ["generer"] == "generer")
{
// Si le répertoire existe bien après le test du CHECK
if ($REP_OK == "1")
{
// Transfert sur ta page 2 pour la suite de tes traitements..
header("Location: Ta_Page_2.php?REP_OK=$REP_OK.... etc ....avec tes variables nécessaires..");
}
// Sinon...
else
{
// L'utilisateur n'a pas fait encore le CHECK
echo "Vous n'avez pas testé l''existence du répertoire ";
}
}
}

L'idée est là je pense.
0
Nomdidiou !! > Nomdidiou !!
7 mars 2009 à 22:51
Re,

AVec une petite modif. indiquée en gras et ca devrait etre OK :

<CENTER><FORM ACTION="Ta_Page_1.php" METHOD="post">
<INPUT TYPE="submit" NAME="check" VALUE="check">
</FORM><P>
<FORM ACTION="Ta_Page_1.php?REP_OK=$REP_OK" METHOD="post">
<INPUT TYPE="submit" NAME="generer" VALUE="generer">
</FORM></CENTER>
<?php
$REP_OK = $_GET["REP_OK"];
if ($_POST ["check"] == "check")
{
// --> Verifie existence repertoire
if (repertoire_OK)
{
$REP_OK = "1";
// redirection sur cette page 1
header("Location: Ta_Page_1.php?REP_OK=$REP_OK");
}
else
{
echo "Ce repertoire n'existe pas...";
$REP_OK = "0";
}
}
if ($_POST ["generer"] == "generer")
{
if ($REP_OK == "1")
{
// Transfert sur ta page 2
header("Location: Ta_Page_2.php?REP_OK=$REP_OK.... etc ....avec tes variables necessaires..");
}
else
{
echo "Vous n'avez pas testé l''existence du repertoire ";
}
}
}
0
Nomdidiou !! > Nomdidiou !!
7 mars 2009 à 22:58
Ahh là là di diou !!...

Faut inverser le code PHP et l'HTML - pour prendre en compte la valeur de la variable $REP_OK au post de "GENERER" (:>).... "hi hi" !!"...

Pas facile à "vue d'œil" - essaye déjà ça.

<?php
$REP_OK = $_GET["REP_OK"];
if ($_POST ["check"] == "check")
{
// --> Verifie existence repertoire
if (repertoire_OK)
{
$REP_OK = "1";
// redirection sur cette page 1
header("Location: Ta_Page_1.php?REP_OK=$REP_OK");
}
else
{
echo "Ce repertoire n'existe pas...";
$REP_OK = "0";
}
}

if ($_POST ["generer"] == "generer")
{
if ($REP_OK == "1")
{
// Transfert sur ta page 2
header("Location: Ta_Page_2.php?REP_OK=$REP_OK.... etc ....avec tes variables necessaires..");
}
else
{
echo "Vous n'avez pas testé l''existence du repertoire ";
}
}
?>

<CENTER><FORM ACTION="Ta_Page_1.php" METHOD="post">
<INPUT TYPE="submit" NAME="check" VALUE="check">
</FORM><P>
<FORM ACTION="Ta_Page_1.php?REP_OK=$REP_OK" METHOD="post">
<INPUT TYPE="submit" NAME="generer" VALUE="generer">
</FORM></CENTER>
0
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
7 mars 2009 à 22:59
On peut faire 2 <form>dans une seule page?
0
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
7 mars 2009 à 23:03
Moi je suis encore moins bon que toi en php... ^^

Et je comprends pas ton code.. :(
0
Nomdidiou !!
7 mars 2009 à 23:15
Re,

Tu peux mettre autant de FORM que tu veux dans une page - l'intérêt c'est que dans chaque FORM tu rediriges vers une page différente via le ACTION=.

Mais si tu veux - dans ce cas ici - tu peux n'en mettre qu'un - c'est pas un problème :

<FORM ACTION="Ta_Page_1.php?REP_OK=$REP_OK" METHOD="post">
<INPUT TYPE="submit" NAME="check" VALUE="check">
<INPUT TYPE="submit" NAME="generer" VALUE="generer">
</FORM>

Sinon je pense avoir mis assez de commentaires pour la compréhension - non ??...

Pour moi tout semble clair - ça devrait fonctionner.
0
Nomdidiou !! > Nomdidiou !!
7 mars 2009 à 23:42
Re,

Voilà - ca c'est testé sur Wamp/Apache et c'est bon - ça marche - j'ai toujours des soucis avec les echo("....") ..
(Hi !).

<?php
$REP_OK = $_GET['REP_OK'];
if ($_POST ['check'] == 'check')
{
$REP_OK = '1';
if ($REP_OK == '1')
{
$REP_OK = '1';
// redirection sur cette page 1
header("Location: Pictures.php?REP_OK=$REP_OK");
}
else
{
echo "Ce repertoire n'existe pas...";
$REP_OK = '0';
}
}

if ($_POST ["generer"] == "generer")
{
if ($REP_OK == '1')
{
// Transfert sur ta page 2
header("Location: Pictures_2.php?REP_OK=$REP_OK");
}
else
{
echo "Vous n'avez pas testé l''existence du repertoire ";
}
}

echo "<FORM ACTION=Pictures.php?REP_OK=$REP_OK METHOD='post'>";

echo '<INPUT TYPE="submit" NAME="check" VALUE="check">';
echo '<INPUT TYPE="submit" NAME="generer" VALUE="generer">';
echo '</FORM>';
?>
0
Nomdidiou !! > Nomdidiou !!
7 mars 2009 à 23:49
(J'avais fait une petite modif. comme t'a pu voir afin de tester) - remplacer donc la section par :


---------------------------------------------------------------
if ($_POST ['check'] == 'check')
{
//-----------------------------------------------------
// Tester l'existence du répertoire ICI ...
//-----------------------------------------------------
// T' a trouvé le repertoire ????
if (REPERTOIRE_TROUVE)
{
$REP_OK = '1';
// redirection sur cette page 1
header("Location: Pictures.php?REP_OK=$REP_OK");
}
else
{
echo "Ce repertoire n'existe pas...";
$REP_OK = '0';
}
}

Bonne continuation du projet - ça pour moi, c'est réglé et j'espère que t'a compris la logique.
0
CréNomDunChien > Nomdidiou !!
8 mars 2009 à 11:44
SEVEN UP !!... mon gaillard.

A tu testé mon code (qui fonctionne) et a tu compris au moins la logique ou je me suis fatigué pour rien ?.

Je te rappelles que tu dois rendre ton TP au plus vite !!. (:>).
0
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
8 mars 2009 à 12:55
Je l'ai testé et il a l'air de fonctionner mais je le mets dans la première page en dessous de mon tableau?

PS: je suis nul en prog.. :/
0
CréNomDunChien
8 mars 2009 à 13:17
Re,

La structure de ta page peut être celle ci :

<?php
$REP_OK = $_GET['REP_OK'];
if ($_POST ['check'] == 'check')
{
//----------------------------------
// Tester ton répertoire ICI...
//----------------------------------
// repertoire OK ???
if (REPERTOIRE_OK)
{
$REP_OK = '1';
// redirection sur cette page 1
header("Location: Pictures.php?REP_OK=$REP_OK");
}
else
{
echo "Ce répertoire n'existe pas...";
$REP_OK = '0';
}
}

if ($_POST ["generer"] == "generer")
{
if ($REP_OK == '1')
{
// Transfert sur ta page 2
header("Location: Pictures_2.php?REP_OK=$REP_OK");
}
else
{
echo "Vous n'avez pas testé l''existence du repertoire ";
}
}

echo "<FORM ACTION=Pictures.php?REP_OK=$REP_OK METHOD='post'>";
echo "<TABLE>;
// La tu mets ton tableau généré par des echo() ............................
//-------------------------------------------------------------------------------------------------------------
// Tu places les boutons "submit" dans ton tableau comme indiqué sur ton document
//-------------------------------------------------------------------------------------------------------------
echo '<INPUT TYPE="submit" NAME="check" VALUE="check">';
echo '<INPUT TYPE="submit" NAME="generer" VALUE="generer">';
// Enfin - Tu fermes ton tableau par </TABLE>
echo "</TABLE>";
echo "</FORM>";

?>
0
CréNomDunChien > CréNomDunChien
8 mars 2009 à 13:37
Re,

Avant que tu me dises si tu sais générer un tableau en PHP et stocker les paramètres qui seront saisis par l'utilisateurs et qui devront être postés, j'avance un peut pour t'aider et pour que tu comprennes le principe :
-----------------------------------------------------------------------------------------------------------------------
....................................... bla bla bla ........................................................................

if ($_POST ["generer"] == "generer")
{
if ($REP_OK == '1')
{
// récupération des paramètres du fichier à générer et qui ont été saisis dans le tableau...
$Nom_Fichier = $_POST["Nom_Fichier"];
$Emplacement_Fichier = $_POST["Emplacement_Fichier"];
$Nombre_Images = $_POST["Nombre_Images"];
$Largeur_Images = $_POST["Largeur_Images"];
$Longueur_Images = $_POST["Longueur_Images"];
// Transfert sur ta page 2 en stockant les paramètres pour les traiter et générer ton fichier !!
header("Location: Pictures_2.php?REP_OK=$REP_OK?NOM_FIC=$Nom_Fichier .. etc...");

}
else
{
echo "Vous n'avez pas testé l''existence du répertoire ";
}
}
0
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
8 mars 2009 à 14:04
En gros, tu m'as fait tout mon tp j'ai l'impression? ^^

J'aurais pu tout faire tout seul mais il y avait un truc que je n'arrivais pas à faire:/

Je voulais le faire en 3 pages..

Je voulais récupérer la valeur du répertoire indiqué dans la première page dans la deuxième donc avec $_POST['repertoire'] ( comme répertoire est un input ) et après transmettre la valeur de $repertoire dans la troisième page mais mon $_POST['$repertoire'] ne fonctionnait pas, j'ai essayer aussi $_POST['repertoire'] mais ça ne changeait rien..
0
CréNomDunChien
8 mars 2009 à 14:15
Re,

En deux pages c'est suffisant je pense.

N'oublie pas donc le $Nom_Rep = $_POST["Nom_Rep"]; à poster sur la seconde page en + des autres paramètres.

Ma foi - il te manque plus qu'a construire ton tableau sur ta page 1 et de générer ton répertoire en page 2 et c'est tout.

t'emballes pas trop vite - tu n'est qu'à 30% de ton projet je crois (:>).

a+.
0
CréNomDunChien
8 mars 2009 à 14:26
Note :

Tu peux bien sur tout faire en une seule page mais avec 2 pages : ça te permettra de manipuler le transfert de paramètres pour t'exercer.
0
Absot Messages postés 777 Date d'inscription mardi 28 octobre 2008 Statut Membre Dernière intervention 4 septembre 2020 44
8 mars 2009 à 16:10
Je pense que je vais le faire en 3 pages, ce sera plus simple pour moi surtout qu'après je dois faire un rapport pour expliquer comment j'ai fais..

Tu as combien d'années d'expérience?

J'en suis à ma dernière page, là ou je dois afficher mes images mais j'ai deux erreur avec mes fonctions opendir et readdir..

Mon code de ma dernière page (celle qui affiche mes images):
[url=http://www.zimagez.com/zimage/16bb9cc2becaa70a888cc22ecedc52999.php][img]http://www.zimagez.com/miniature/16bb9cc2becaa70a888cc22ecedc52999.png[/img][/url]

Et voilà mon message d'erreur:
[url=http://www.zimagez.com/zimage/2e99fee2398c0e33584fbb9ae3cbc5472.php][img]http://www.zimagez.com/miniature/2e99fee2398c0e33584fbb9ae3cbc5472.png[/img][/url]
0
Re,

Ca va - t'aura fini demain je pense (:>).

Slts.
0