Modification effectuer mais sans effet

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Modification effectuer mais sans effet

Re: Modification effectuer mais sans effet

par sirakawa » 05 déc. 2013, 11:11

$sql = mysql_query(" UPDATE info_banque SET
banque='$banque'
WHERE radical = '$result'");
tester :

$sql = " UPDATE info_banque SET
banque='$banque'
WHERE radical = '$result'";
print "$sql";//et tester dans phpmyadmin ou autre
$resultat = mysql_query($sql);

Re: Modification effectuer mais sans effet

par faora45 » 05 déc. 2013, 07:45

Bonjour ! Aucun changement .je ne sais pas ou est le problème ,est ce quelqu'un à une solution :priere: :priere: ?

Re: Modification effectuer mais sans effet

par sirakawa » 03 déc. 2013, 14:54

le nouveau modifier.php
<?php

require_once('conf.php');


$radical = isset($_POST['radical']) ? $_POST['radical']:false;
$radical = isset($_POST['banque']) ? $_POST['banque']:false;
$modifier = isset($_POST['Modifier']) ? $_POST['Modifier']:false;
$message = "";
$traiter = true;
if($radical === false)
{
$message .= "radical absent";
$traiter = false;
}
if ($banque === false)
{
$message .= "banque absent";
$traiter = false;
}
if ($modifier === false)
{
$message .= "tentative d'intrusion;
$traiter = false;
}
if ($traiter)
{
$banque = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["banque"])));
 

$sql = mysql_query(" UPDATE info_banque SET 
banque='$banque' 
WHERE radical = '$result'
if (!$sql) 
{
    die('Requête invalide : ' . mysql_error());
}
else 
{

echo '<p>La modification à été effectué avec succès. <a href="/bicm/explo/banque/index.html">Retour vers "Memo commerciale"</a></p>';
}

mysql_close();						 
 
}
");}
else
{
print "$message";}




?>
]
Je ne garantis pas la syntaxe et ce n'est pas obligatoire
et en passant merci :)

Re: Modification effectuer mais sans effet

par faora45 » 03 déc. 2013, 13:55

le nouveau modifier.php
<?php

require_once('conf.php');


$radical = isset($_POST['radical']) ? $_POST['radical']:false;
$radical = isset($_POST['banque']) ? $_POST['banque']:false;
$message = "";
$traiter = true;
if($radical === false)
{
$message .= "radical absent";
$traiter = false;
}
if ($banque === false)
{
$message .= "banque absent";
$traiter = false;
}
if ($traiter)
{
}
else
{
print "$message";}
var_dump($_POST);
if(isset($_POST["Modifier"]))
{

$banque = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["banque"])));
 

$sql = mysql_query(" UPDATE info_banque SET 
banque='$banque' 
WHERE radical = '$result'
");

if (!$sql) 
{
    die('Requête invalide : ' . mysql_error());
}
else 
{

echo '<p>La modification à été effectué avec succès. <a href="/bicm/explo/banque/index.html">Retour vers "Memo commerciale"</a></p>';
}

mysql_close();						 
 
}
?>
]
reponse avec var_dump($_POST);
array(3) { ["radical"]=> string(7) "103182 " ["banque"]=> string(5) "ameng" ["Modifier"]=> string(8) "Modifier" }

La modification � �t� effectu� avec succ�s. Retour vers "Memo commerciale"
corrige moi si il a des erreur
et en passant merci :)

Re: Modification effectuer mais sans effet

par sirakawa » 03 déc. 2013, 10:54

dans modifier.php, il faut extraiire les valeurs avant de t'en servir:
$radical = isset($_POST['radical']) ? $_POST['radical']: false;
$banque = isset($_POST['banque']) ? $_POST['banque']: false;
$message = "";
$traiter = true;
if ($radical === false)
{
$message .= "radical absent";
$traiter = false;
}
if ($banque === false)
{
$message .= "banque absente";
$traiter = false;
}
if ($traiter)
{

}
else
{
print "$message";
}

Re: Modification effectuer mais sans effet

par faora45 » 03 déc. 2013, 10:23

php?> <form action = "modifier.php" method ="post">
<p>Radical<br/>
<input name="radical" size="22" value="<?php echo  $result['radical'];?> "type="text"/></p>
<textarea name= "client" rows="10" cols ="50" ><?php echo $result['client'];?></textarea></br>
<input name = "Modifier" value = "Modifier" type ="submit"/>
</form>
<?php]
et maintenant sa donne ceci
Array ( [radical] => 103182 [banque] => bonjour [Modifier] => Modifier )

Re: Modification effectuer mais sans effet

par sirakawa » 03 déc. 2013, 10:07

Le formulaire ne fait pas son travail.
Envoie le code du formulaire.

Re: Modification effectuer mais sans effet

par faora » 03 déc. 2013, 09:49

Array ( )

que doit je faire un tuto peut être ou tu me montre comment faire .

Re: Modification effectuer mais sans effet

par sirakawa » 03 déc. 2013, 09:28

ca veut dire que
--- $banque contient une chaine vide : problème de relations avec le formulaire. Ajouter tout au début:
print "<br />formulaire"; print_r($_POST); die();
--- $sql vaut 1 ou TRUE ce qui n'est pas étonnant

Re: Modification effectuer mais sans effet

par faora45 » 03 déc. 2013, 08:22

<?php
/*Il faut abandonner mysl pour mysqli ou pdo*/
error_reporting(E_ALL); //en phase de développement
require_once('conf.php');
if(empty($_POST["Modifier"]))
{

$banque = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["client"])));
var_dump($banque); //pour connaître le résultat de cette accumulartion de fonctions

/*je pense préférable de faire les choses en deux temps
au passage où snt définis $client et $result?*/
$sql = " UPDATE info_client SET
client='$client'
WHERE radical = '$result'";
print "$ŝql";//pour connaître le texte de la requête
$resultat = mysql_query($sql);

/*la rquête n'est pas le moins du monde invalide; elle est inefficace:
http://us3.php.net/manual/fr/function.mysql-query.php*/
if (!$sql)
{
die('Requête invalide : ' . mysql_error());
}
else
{

echo '<p>La modification à été effectué avec succès. <a href="index.html">Retour vers "Memo commerciale"</a></p>';
}

mysql_close();

}
?>
BONJOUR !
une solution n'est pas du luxe , alors voici la réponse a cet test
string(0) "" 1

Re: Modification effectuer mais sans effet

par xTG » 02 déc. 2013, 19:36

Pour ta question sur le retour de la fonction que je t'ai demandé cela signifie que ton script ne reçoit rien du formulaire.
Autrement dit : le formulaire n'est pas posté.
Ou bien que tu as une redirection entre le moment où tu postes le formulaire et le moment où tu as cet affichage.

Re: Modification effectuer mais sans effet

par dogmongo » 02 déc. 2013, 13:02

ok merci , je ne pensais pas que c'était une certitude

Re: Modification effectuer mais sans effet

par sirakawa » 02 déc. 2013, 12:56

parce que il FAUT lire la documentation de php pour y apprendre que mysql est déclaré obsolète et sera abandonné à termehttp:
//us2.php.net/manual/fr/intro.mysql.php

Re: Modification effectuer mais sans effet

par dogmongo » 02 déc. 2013, 12:52

Bonjour,

Pourquoi tu écris Il faut abandonner mysl pour mysqli ou pdo ?

Re: Modification effectuer mais sans effet

par sirakawa » 02 déc. 2013, 11:15

Quelques observations sur le formulaire:
<?php

require_once('conf.php');                       
$req = mysql_query("SELECT radical, client FROM $nomtable WHERE radical  LIKE '%".$_POST['recherche']."%' " ); 

$resultat= mysql_num_rows($req); 
if (strlen($_POST["recherche"]) > 0)
{
echo '&nbsp;&nbsp;';
echo'pour  [ <span style="color:red;">'.$_POST['recherche'].' </span> ]<br />';

while( $result = mysql_fetch_array($req))
{

?> 
/*un formulaire ne peut avoir method = 'post' et passer des valeurs comme tu fais qui utilisent la méthode get*/
 <!-- A-t-on besoin de passer le tableau result alors qu'il ne contient que la dernière ligne lue?-->
//<form action = "modifier.php"=<?php echo $result;?> "method ="post">
<form action = "modifier.php" method ="post">
 <p>Radical<br/>
 <!--répartir correctement les espaces-->
 <input name="radical" size="22" value="<?php echo '' . $result["radical"].'';?> " type="text" /></p>-->
 
 <textarea name= "client" rows="10" cols ="50" ><?php echo'' .$result['client'].'';?></textarea><br />


 <input name = "Modifier" value = "Modifier" type ="submit" />
 </form>
<?php
}

echo '<p>&nbsp;</p>';
}
  else{
echo '<p>Désolé mais aucun résultat ne correspond à votre demande.</p>';
}
mysql_close(); 
?>