Probleme recuperation numero pour ma redirection

aureliemerlin Messages postés 82 Date d'inscription jeudi 24 juin 2010 Statut Membre Dernière intervention 17 avril 2013 - 20 janv. 2011 à 11:59
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 - 20 janv. 2011 à 17:40
Bonjour à tous,

je voudrais récupérer mon numéro pour le mettre en paramètres dans ma redirection mais cela ne marche pas

voici le code utilisé :
<?php
if (isset($_POST['Num']))
{

require_once('includes/bd.inc.php');
require_once('includes/magicquotes.inc.php');
$Num = mysqli_real_escape_string($lien, $_POST['Num']);
$numero = mysqli_real_escape_string($lien, $_POST['Num']);
$TypeDeBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['TypeDeBien']));
$AdresseBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['AdresseBien']));
$ValeurBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['ValeurBien']));
$CRD = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['CRD']));
$sql = "UPDATE bdpatrimoine set TypeDeBien='$TypeDeBien', AdresseBien='$AdresseBien', ValeurBien='$ValeurBien', CRD='$CRD' where Num = '$Num'";
if (!mysqli_query($lien, $sql))
{
$erreur = "erreur dans la modification de la fiche patrimoine :" .mysqli_error($lien);
include 'erreur.html.php';



}


}
header('Status: 301 Moved Permanently', false, 301);
header('Location: modifpatrimoine.php?Num='echo $Num; );

?>
<?php
function changedatefrus($datefr)
{
$dateus=$datefr{6}.$datefr{7}.$datefr{8}.$datefr{9}."-".$datefr{3}.$datefr{4}."-".$datefr{0}.$datefr{1};
return $dateus;
}
?>

je pense avoir un problème de syntaxe dans mon header mais je ne vois pas lequel
lorsque j'exécute mon code j'ai le message d'erreur suivant :
Parse error: syntax error, unexpected T_ECHO in C:\Program Files\EasyPHP-5.3.3\www\gescompt\majpatrimoine.php on line 26


quelqu'un a t il une idée ???

merci d'avance
bonne journée
Aurélie

13 réponses

cs_ludwig59 Messages postés 128 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 6 mai 2011 2
20 janv. 2011 à 12:22
Bonjour

Essayez ceci

header('Location: modifpatrimoine.php?Num='.$Num); 
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 janv. 2011 à 12:31
bonjour

pas d 'echo !
header('Location: modifpatrimoine.php?Num='echo $Num; );
-->
header('Location: modifpatrimoine.php?Num='.$Num);exit;

a++
0
aureliemerlin Messages postés 82 Date d'inscription jeudi 24 juin 2010 Statut Membre Dernière intervention 17 avril 2013
20 janv. 2011 à 14:11
merci pour vos réponses
j'ai essayé avec ceci :
header('Location: modifpatrimoine.php?Num='.$Num);exit;
mais je ne récupère rien dans mon numéro


Aurélie
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 janv. 2011 à 15:24
}
//header('Status: 301 Moved Permanently', false, 301);
//header('Location: modifpatrimoine.php?Num='echo $Num; );

fait pour voir

}
//header('Status: 301 Moved Permanently', false, 301);
//header('Location: modifpatrimoine.php?Num='echo $Num; );
echo 'modifpatrimoine.php?Num='.$Num;
/*ou*/
echo $num;
/*pour voir si ça existe*/

puis essaie aprés

}
//header('Status: 301 Moved Permanently', false, 301);
header('Location: modifpatrimoine.php?Num='.$Num);exit;

a++
0

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

Posez votre question
aureliemerlin Messages postés 82 Date d'inscription jeudi 24 juin 2010 Statut Membre Dernière intervention 17 avril 2013
20 janv. 2011 à 15:33
si je mets simplement


echo 'modifpatrimoine.php?Num='.$Num;
alors j'ai le message suivant :

Notice: Undefined variable: Num in C:\Program Files\EasyPHP-5.3.3\www\gescompt\majpatrimoine.php on line 24
modifpatrimoine.php?Num=

merci
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 janv. 2011 à 16:19
bien voilà le problème
la variable n'existe pas !
ton code devrait etre ...

<?php 
if (isset($_POST['Num']) && !empty($_POST['Num'])) 
{ 

require_once('includes/bd.inc.php'); 
require_once('includes/magicquotes.inc.php'); 
$Num = mysqli_real_escape_string($lien, $_POST['Num']); 
$numero = mysqli_real_escape_string($lien, $_POST['Num']); 
$TypeDeBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['TypeDeBien'])); 
$AdresseBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['AdresseBien'])); 
$ValeurBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['ValeurBien'])); 
$CRD = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['CRD'])); 
$sql = "UPDATE bdpatrimoine set TypeDeBien='$TypeDeBien', AdresseBien='$AdresseBien', ValeurBien='$ValeurBien', CRD='$CRD' where Num = '$Num'"; 
  
  if (!mysqli_query($lien, $sql)) 
  { 
  $erreur = "erreur dans la modification de la fiche patrimoine :" .mysqli_error($lien); 
  include 'erreur.html.php'; 
  } 

//header('Status: 301 Moved Permanently', false, 301); 
header('Location: modifpatrimoine.php?Num='.$Num); 

} else {
echo 'prob VARIABLE $Num';
}
?>
0
aureliemerlin Messages postés 82 Date d'inscription jeudi 24 juin 2010 Statut Membre Dernière intervention 17 avril 2013
20 janv. 2011 à 16:30
effectivement j'ai un problème avec ma variable num
mais je ne comprend pas pourquoi car la variable est bien visible sur mon formulaire de saisie et fonctionne bien dans ma requête donc je ne sais pas d'où vient le problème

voici le code qui me permet d'afficher les informations de mon formulaire :
<!doctype html public "-//w3c//dtd xhtml 1.0 strict//en"
"http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd">
<html xmlns= "http://www.w3.org/1999/xhtml" xml/lang="fr"
lang="fr"
<head>
<title>patrimoine</title>
<META HTTP-equiv="content-type"
content="text/html, charset=utf-8"/>
</head>

<?php
require_once('includes/templategc.php');
require_once('includes/magicquotes.inc.php');
require_once('includes/bd.inc.php');
$Num = mysqli_real_escape_string($lien, $_GET['Num']);
$resultat1 mysqli_query($lien, "select Num, NumOp, NumCli, CodeCom, TypeDeBien, AdresseBien, ValeurBien, CRD from bdpatrimoine where Num'$Num'");
$bdpatrimoine = array();
while ($ligne = mysqli_fetch_array($resultat1))
{
$bdpatrimoine[]= array('Num' => $ligne ['Num'], 'NumOp' => $ligne['NumOp'], 'NumCli' => $ligne['NumCli'], 'CodeCom' => $ligne['CodeCom'], 'TypeDeBien' => $ligne['TypeDeBien'], 'AdresseBien' => $ligne['AdresseBien'], 'ValeurBien' => $ligne['ValeurBien'], 'CRD' => $ligne['CRD']);
}
?>
<?php foreach ($bdpatrimoine as $patrimoine): ?>
<form action="?" method="POST">
fiche patrimoine



<!--debut de rounded box --> <!--debut de rounded box -->


<fieldset>


<label for ="Num">Numéro :</label>
" />




<label for= "Num">Type De Bien :</label>
" />



<label for="AdresseBien">Adresse du Bien :</label>
" />



<label for="ValeurBien">Valeur du Bien :</label>
" />




<label for="CRD">Valeur du Bien :</label>
" />


</fieldset>
<!--fin de rounded box-->

<?php endforeach; ?>


[modifoperations.php?Num =<?php echo $patrimoine['NumCli']; ?> ]
[majpatrimoine.php?Num=<?php echo $patrimoine['Num']; ?> ]


<!--fin de btns -->

<!--fin de wrapper -->
</form>


<?php if (isset($patrimoine['Num']))
{
include('majpatrimoine.php');
}
?>
<?php
pied();
?>
<?PHP
function changedateusfr($dateus)
{
$datefr=$dateus{8}.$dateus{9}."-".$dateus{5}.$dateus{6}."-".$dateus{0}.$dateus{1}.$dateus{2}.$dateus{3};
return $datefr;
}

?>

</html>


et voici le code qui fait la maj des mes informations :
<?php
if (isset($_POST['Num']))
{

require_once('includes/bd.inc.php');
require_once('includes/magicquotes.inc.php');
$Num = mysqli_real_escape_string($lien, $_POST['Num']);
$TypeDeBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['TypeDeBien']));
$AdresseBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['AdresseBien']));
$ValeurBien = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['ValeurBien']));
$CRD = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['CRD']));
$sql = "UPDATE bdpatrimoine set TypeDeBien='$TypeDeBien', AdresseBien='$AdresseBien', ValeurBien='$ValeurBien', CRD='$CRD' where Num = '$Num'";
if (!mysqli_query($lien, $sql))
{
$erreur = "erreur dans la modification de la fiche patrimoine :" .mysqli_error($lien);
include 'erreur.html.php';



}


header('Location: modifpatrimoine.php?Num='.$Num);

} else {
echo 'prob VARIABLE $Num';
}
?>
<?php
function changedatefrus($datefr)
{
$dateus=$datefr{6}.$datefr{7}.$datefr{8}.$datefr{9}."-".$datefr{3}.$datefr{4}."-".$datefr{0}.$datefr{1};
return $dateus;
}
?>

voila
j'espère que cela permettra de trouver mon probléme

merci d'avance
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 janv. 2011 à 16:50
dans le fichier qui receptionne aprés le <?php

met ça pour voir comment se présente le tableau $_POST

echo '';
print_r($_POST);
echo '

';

echo '';
var_dump($_POST);
echo '

';

ET SI $_POST['Num'] est là
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 janv. 2011 à 16:55
<form action="?" method="POST">

plutot

<form action="fichier_de_reception.php" method="POST">
0
aureliemerlin Messages postés 82 Date d'inscription jeudi 24 juin 2010 Statut Membre Dernière intervention 17 avril 2013
20 janv. 2011 à 16:57
voici ce qu'il m'affiche

Array
(
)

array(0) {
}
0
aureliemerlin Messages postés 82 Date d'inscription jeudi 24 juin 2010 Statut Membre Dernière intervention 17 avril 2013
20 janv. 2011 à 17:16
ca ne marche toujours pas

voici le message qui apparaît :
Array
(
)

array(0) {
}

prob VARIABLE $Num

merci
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 janv. 2011 à 17:21
oui ton formulaire envoie rien !
les deux fichiers sont ils dans le même repertoire ?
sinon met le chemin absolu dans le formulaire action="http://tonserveur.com/rep/fichier_de_reception.php"
pourtant ton code à l'air propre

a++
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 janv. 2011 à 17:40
voila j'ai fait un test sans php que du html
ou presque le form fonctionne
je crois qui il y a un prob avec endforeach (a virer)

bon faut que j'y aille a ++


test.php

<?php
echo ''; 
print_r($_POST); 
echo '

'; 

echo ''; 
var_dump($_POST); 
echo '

'; 


?>

<!doctype html public "-//w3c//dtd xhtml 1.0 strict//en" 
"http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> 
<html xmlns= "http://www.w3.org/1999/xhtml" xml/lang="fr" 
lang="fr" 
<head> 
<title>patrimoine</title> 
<META HTTP-equiv="content-type" 
content="text/html, charset=utf-8"/> 
</head> 
 
<?php 
/*
//require_once('includes/templategc.php'); 
//require_once('includes/magicquotes.inc.php'); 
//require_once('includes/bd.inc.php'); 
$Num = mysqli_real_escape_string($lien, $_GET['Num']); 
$resultat1 mysqli_query($lien, "select Num, NumOp, NumCli, CodeCom, TypeDeBien, AdresseBien, ValeurBien, CRD from bdpatrimoine where Num'$Num'"); 
$bdpatrimoine = array(); 
while ($ligne = mysqli_fetch_array($resultat1)) 
{ 
$bdpatrimoine[]= array('Num' => $ligne ['Num'], 'NumOp' => $ligne['NumOp'], 'NumCli' => $ligne['NumCli'], 'CodeCom' => $ligne['CodeCom'], 'TypeDeBien' => $ligne['TypeDeBien'], 'AdresseBien' => $ligne['AdresseBien'], 'ValeurBien' => $ligne['ValeurBien'], 'CRD' => $ligne['CRD']); 
}  */
?> 
<?php /*foreach ($bdpatrimoine as $patrimoine):*/ ?> 
<form action="?" method="POST"> 
fiche patrimoine
 

 
<!--debut de rounded box --> <!--debut de rounded box -->   

 
<fieldset> 

 
<label for ="Num">Numéro  :</label> 
" /> 

 

 
<label for= "Num">Type De Bien :</label> 
" /> 

 

<label for="AdresseBien">Adresse du Bien :</label> 
" />
 

 
<label for="ValeurBien">Valeur du Bien :</label> 
" /> 

 

 
<label for="CRD">Valeur du Bien :</label> 
" /> 

 
</fieldset> 
<!--fin de rounded box--> 
   
<?php /*endforeach; */?> 

 
[modifoperations.php?Num =<?php echo $patrimoine['NumCli']; ?> ] 
[majpatrimoine.php?Num=<?php echo $patrimoine['Num']; ?>  ] 


 <!--fin de btns --> 

 <!--fin de wrapper --> 
</form> 

 
<?php if (isset($patrimoine['Num'])) 
{ 
include('majpatrimoine.php'); 
} 
?> 
<?php 
/*
pied(); 
*/
?> 
<?php 
/*
function changedateusfr($dateus) 
{ 
$datefr=$dateus{8}.$dateus{9}."-".$dateus{5}.$dateus{6}."-".$dateus{0}.$dateus{1}.$dateus{2}.$dateus{3}; 
return $datefr; 
} 
 */
?> 
 
</html> 
0
Rejoignez-nous