Suivez les fils RSS
 
Auteur
SebC
# 09 Feb 2010 - 15:43:06
Citer
5 Posts
Bonjour,

Je balbutie en PHP/MySQL et j'ai besoin d'aide :

J'ai une table "Séjours" qui contient :
ID, type, destination. (sejour.php)

J'ai une deuxième table "option_séjour" qui contient :
ID,destination,descriptif. (option_sejour.php)

Aucun problème pour alimenter la table sejour via sejour.php, tout est OK. (les fonctions Ajout/Modifier sont intégrées dans la même page)

j'ai créé un lien dans séjour.php


print " | <A HREF='option_sejour.php?mod=aj=1&destination=".$row destination ."'> Option </a>


c'est maintenant que ça se complique pour moi :

je voudrais récupérer la variable du POST (destination) pour qu'elle s'insère automatiquement dans un champ non modifiable de la page option_sejour.php, jusqu'à la validation du formulaire d'enregistrement de cette dernière. (j'utiliserai ce champ commun aux deux tables pour la jointure des tables ultérieurement).

Comment faire ?

Merci
Modifié par SebC (13 Feb 2010 - 01:54)

^
Heyoan
# 09 Feb 2010 - 18:08:58
Citer
Modérateur
8101 Posts
Salut,

SebC a écrit :
Je balbutie en PHP/MySQL
Du coup tu n'es pas sur le bon forum comme cela est expliqué dans l'annonce. cligne

SebC a écrit :
j'ai créé un lien dans séjour.php

print " | <A HREF='option_sejour.php?mod=aj=1&destination=".$row destination ."'> Option </a>
... qui est invalide.

Ça devrait plutôt ressembler à :
print  ' | <a href="option_sejour.php?mod=aj&destination='.$row['destination'].'"> Option </a>';
Par ailleurs si tu n'as qu'1 et 1 seul enregistrement dans la table option_sejour c'est que cette table est inutile : le champ descriptif devrait être dans la table sejour.

SebC a écrit :
je voudrais récupérer la variable du POST (destination) pour qu'elle s'insère automatiquement dans un champ non modifiable de la page option_sejour.php, jusqu'à la validation du formulaire d'enregistrement de cette dernière. (j'utiliserai ce champ commun aux deux tables pour la jointure des tables ultérieurement).
En premier lieu ce n'est pas une variable POST mais une variable GET.

Ensuite, soit tu as besoin de l'afficher pour l'utilisateur et tu peux faire
<input type="text" name="destination" disabled="disabled" value="<?php echo $_GET['destination'] ; ?>" />
soit tu n'as pas besoin de l'afficher et tu peux faire :
<input type="hidden" name="destination" value="<?php echo $_GET['destination'] ; ?>" />


^
SebC
# 12 Feb 2010 - 23:41:49
Citer
5 Posts
Bonjour,

Merci beaucoup pour ta réponse.

La fonction aj=1 permet l'affichage du formulaire de saisie des données (comme je l'avais mentionné dans mon premier post les possibilités d'ajout/modification/suppression sont intégrées dans la page et s'affiche par le biais de liens).

L'affichage de la variable passée avec ta ligne de code :
<input type="text" name="destination" disabled="disabled" value="<?php echo $_GET['destination'] ; ?>" />

fonctionne parfaitement, mais l'enregistrement dans la table ne s'effectue pas. Comment puis-je récupérer la valeur passée en GET dans l'envoi des données.

Merci,

Seb

^
Heyoan
# 12 Feb 2010 - 23:49:48
Citer
Modérateur
8101 Posts
SebC a écrit :
La fonction aj=1 permet l'affichage du formulaire de saisie des données
Ce n'est pas une fonction mais un passage de variable. cligne

Tu avais mis option_sejour.php?mod=aj=1... ce qui est invalide. J'ai donc supposé que c'était option_sejour.php?mod=aj... mais d'après ce que tu dis il faut mettre option_sejour.php?aj=1...

^
SebC
# 13 Feb 2010 - 00:03:19
Citer
5 Posts
Bonsoir,

Voila l'url exacte que j'emploie :

print  " | <A HREF='option_sejour.php?aj=1&destination=".$row destination ."'> Option </a>


le contenu de destination passe bien par l'url et s'affiche sur la page option_sejour.php.

mais lors de l'enregistrement.. le champ est vide dans la table, la valeur n'est pas envoyée, je viens de tenter une déclaration comme ceci en tête de page :


<?php
$destination = $_GET destination ;
?>


mais sans succès.

L'enregistrement est déclaré comme ceci :

<?
include("connect.inc.php");
if($_POST[Submit]=='Enregistrer'){

$type=AddSlashes($type);
$destination=AddSlashes($destination);
$slogan=AddSlashes($slogan);
$ok=0;
$query="insert into option_sejour values ('','$type','$destination','$slogan')";
if(mysql_query($query)){
$ok++;
}
$id_i = mysql_insert_id();
if(($photo!='none')&&($photo!='')){
if(move_uploaded_file($_FILES['photo']['tmp_name'],$_SERVER['DOCUMENT_ROOT']."/imgs/option_circuits/".$id_i.".jpg")){
$ok++;
}
}
}elseif($_POST[Submit]=='Modifier'){
$type=AddSlashes($type);
$destination=AddSlashes($destination);
$slogan=AddSlashes($slogan);
$ok=0;
$query="update option_sejour set type='$type', destination='$destination', slogan='$slogan'";
if(mysql_query($query)) $ok++;
if(($photo!='none')&&($photo!='')){
unlink($_SERVER['DOCUMENT_ROOT']."/imgs/option_circuits/".$_POST id .".jpg");
if(move_uploaded_file($_FILES['photo']['tmp_name'],$_SERVER['DOCUMENT_ROOT']."/imgs/option_circuits/".$_POST id .".jpg")) $ok++;
mysql_query($query);
}
}
if($_REQUEST act =='sup'){
$query = "DELETE FROM option_sejour WHERE id='$_REQUEST id '";
mysql_query($query);
unlink($_SERVER['DOCUMENT_ROOT']."/imgs/option_circuits/".$_REQUEST id .".jpg");
}elseif($_REQUEST act =='mod'){
$query = "SELECT * FROM option_sejour WHERE id='$_REQUEST id '";
$rep = mysql_query($query);
$res = mysql_fetch_array($rep);
}
?>


merci,

Seb

^
Heyoan
# 13 Feb 2010 - 00:08:09
Citer
Modérateur
8101 Posts
Ce n'est pas $destination = $_GET[ destination]; mais $destination = $_GET['destination'];. Et je me répète : Alsacréations n'est pas le bon forum pour débuter en php. murf
Modifié par Heyoan (13 Feb 2010 - 00:08)

^
SebC
# 13 Feb 2010 - 00:23:37
Citer
5 Posts
merci, pour le temps passé à me répondre, mais ça fonctionne toujours pas.

Je vais donc me tourner vers un forum pour débutant.

Seb decu

^
SebC
# 13 Feb 2010 - 01:06:24
Citer
5 Posts
PHP débutant m'a sorti de l'ornière en 10 mn, si le champ "text" est "disabled", le contenu de ce dernier n'est pas envoyé vers la base.

^
Heyoan
# 13 Feb 2010 - 01:11:26
Citer
Modérateur
8101 Posts
Cool !

Bonne continuation. smile

^