Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

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 : Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Martingale » 12 août 2016, 09:42

Le bind du paramètre peut être ?

Code : Tout sélectionner

$reponse = $bdd->prepare('SELECT * FROM mill_tool WHERE ID = ?'); $reponse->bind_param($_GET['IDnum']); $reponse->execute();

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Mattdtry » 11 août 2016, 17:53

Merci encore Naroth pour ton aide ! :D

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Naroth » 11 août 2016, 00:35

Bonsoir,

J'ai passé un peu de temps avec Mattdtry sur son code on est donc arrivé au constat que ce le code ci-dessous ne fonctionnait pas chez lui mais marchait chez moi.
$reponse = $bdd->prepare('SELECT * FROM mill_tool WHERE ID = ?');
$reponse->execute(array($_GET['IDnum']));
J'ai tenté toutes les variantes avec bindparams / bindvalues sans effet

La solution que je lui ai proposé est donc la suivante et qui fonctionne
$query = "SELECT * FROM mill_tool WHERE ID = ".$_GET['IDnum'];
$reponse = $bdd->query($query);

while($donnees = $reponse->fetch(PDO::FETCH_ASSOC )
{ 
...
Ma question est alors POURQUOI la première version ne marche pas ?

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Mattdtry » 10 août 2016, 20:27

Le code pour Delete ça marche aussi sur ta machine ?

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Mattdtry » 10 août 2016, 20:26

Qu'est-ce qui ferait que ça ne marcherait pas sur mon environnement alors ? C'est vraiment bizzare ...! ça ne marche toujours pas même sur d'autre navigateur :/

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Naroth » 10 août 2016, 20:19

Attend,

Ton code je l'ai testé sous windows 7.
Dans ton cas comme il n'y a pas eu de changement d'envionnement pas de probleme de ce genre !

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Mattdtry » 10 août 2016, 19:34

Sinon pas d'autres solutions pour solutionner ce problème autrement que par le téléchargement de linux ?!

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Mattdtry » 10 août 2016, 18:42

Whouahhh donc il marche .... :D bizzare !! Je suis sous Microsoft Windows 10 home avec Wampserver et sur chrome. Je vais essayer avec linux alors ! Je vous tiens au courant de si ça marche.

Merci Naroth.

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Naroth » 10 août 2016, 17:46

Bonjour,

J'ai testé ton code sur ma machine et il fonctionne. J'ai les inputs, ces mêmes inputs sont remplis. (j'ai crée une base de données avec des valeurs arbitraires mais qui respecte tes champs).

Pour en revenir aux environnements :
Pour ma part je développe sous un Windows 7 via un WampServer (pour le PHP) etc... (Aussi appelé environnement de dev)
En revanche les serveurs sur lesquels mes services web vont tourner, une fois le développement terminé, sont des serveurs Linux (Environnement de prod)
Plus d'info sur les environnements

Je te posais donc cette question car il est très fréquent que des petits problèmes (dû au changement d'OS pas à ton code) ce glisse lors du passage de l'un à l'autre.
Dans mon cas (Windows -> Linux) le changement chiant le plus courants que je peux te citer est le traitement des retours chariots qui ne sont gérés de la même manière par les deux OS.

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Mattdtry » 10 août 2016, 17:18

Bonjour Naroth,

Désolé de ne répondre que maintenant je suis aux USA et j'ai donc un bon décalage horaire avec vous...

Qu'entends-tu par là, je ne comprend pas trop la question ?
Sinon rien ne te parait complètement faux dans mon code ?

Cordialement,
Mattdtry.

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Naroth » 10 août 2016, 08:44

Bonjour,

Tu peux toujours essayé d'activer l'affichage des erreurs en mettant au debut de ta page :
ini_set("display_errors","1");


Dans quel environnement tourne ton code ?
Est-ce le même que celui de developpement ?

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Mattdtry » 10 août 2016, 01:02

Je veux dire que rien ne s'affiche même le texte avant les input. Le plus étonnant est dès que j'enlève les ligne de php dans le value des input alors ils réapparaissent avec le texte.

Oui j'ai bien vérifié le nom de mes entrées pas de problème de ce côté là... :/

Merci de votre réponse.

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Naroth » 10 août 2016, 00:28

Bonsoir,

Quand tu dis que tes inputs ne s'affiche pas c'est que tu ne les vois pas ou que les valeurs ne sont pas mises dedans ?

Sinon tu es bien sûre que les champs de ta base de données sont les bons ? ("Tool_Name", "Diameter", "Lenght", "Type" ... )

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par Mattdtry » 10 août 2016, 00:13

Houla ! J'ai fais beaucoup de confusion ... Je te pris de m'en excuser !
Tout d'abord merci beaucoup de ta réponse ! Merci pour le href dans la balise form j'avais oublié qu'elle ne pouvait contenir de href.
L'idée était de faire un formulaire pré-remplit avec les informations de l'outils que l'on souhaite modifier. Problème mes input ne s'affiche pas et donc le formulaire pré-remplit encore moins ... je me suis tromper pour le formulaire (Mill_Tool_Modifytool.php) voici le bon :
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>Tool Manager</title>
        <link href="style1.css" rel="stylesheet">
	<link rel="stylesheet" type="text/css" href="print1.css" media="print1" />
        <!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link href='http://fonts.googleapis.com/css?family=Tenor+Sans&v1' rel='stylesheet' type='text/css'>
	</head>
	<body>
		<div class="container"> 
            <header>
                <?php include("head.php"); ?>
            </header>
            	</br><h1>Mill Tooling</h1></br>

            <div class="container1">

            <?php 
            	$bdd = new PDO('mysql:host=localhost;dbname=utilisateur', 'root', '');
				$reponse = $bdd->prepare('SELECT * FROM mill_tool WHERE ID = ?');
				$reponse->execute(array($_GET['IDnum']));
			?>

			<?php while ($donnees = $reponse->fetch()) 
						{
			?>

	
            	<form action="Mill_Tool_Modify.php" method="POST"> <!--Champ de recherche a gauche-->
          
    				<p class="box1"> <label>Tool name: </br><input type="text" name="NXTool_Name" value="<?php echo $donnees['Tool_Name']; ?>" /></label>  </p>
				
    				<p class="box2"> <label>Diameter : </br><input type="number" name="NXDiameter" value="<?php echo $donnees['Diameter']; ?>" /></label>  inch </p>

    				<p class="box3"> <label>Lenght : </br><input type="number" name="NXLenght" value="<?php echo $donnees['Lenght']; ?>" /></label>  inch </p>
				
    				<p class="box4">
        				<label>Type :</br>
   	
   					<select id="Typetool" name="NXType" value="<?php echo $donnees['Type']; ?>" >
	               		<option value="Engraving tool">Engraving tool</option>
	               		<option value="Endmill 3 bull">Endmill 3 bull</option>
	               		<option value="Face mill">Face mill</option>
	               		<option value="Chamfer mill">Chamfer mill</option>
	               		<option value="Endmill 2 Sphere">Endmill 2 Sphere</option>
	               		<option value="Endmill 1 flat">Endmill 1 flat</option>
	               		<option value="Csink">Csink</option>
	               		<option value="Cbore">Cbore</option>
	               		<option value="Reamer">Reamer</option>
	               		<option value="Tap RH">Tap RH</option>
	               		<option value="Drill">Drill</option>
	               		<option value="Spot drill">Spot drill</option>
	               		<option value="Center drill">Center drill</option>
	            	</select></label> 
	            	</p>

					<p class="box5"> <label>Material : </br><input type="text" name="NXMaterial" value="<?php echo $donnees['Material']; ?>" /></label>  </p>
			
					<p class="box6"> <label>Statement : </br><input type="text" name="NXStatement" value="<?php echo $donnees['Statement']; ?>" /></label>  </p>
			
    				<p class="box7"> <label>Quantity : </br><input type="number" name="NXQuantity" value="<?php echo $donnees['Quantity']; ?>" /></label>  </p>

    				<p class="box8"> <input type="submit" value="Execute"> </p>

    			</form>
    			<?php
					};
				?>
			
			</div>
		</div>
	</body>
</html>
Ton conseil est de merde le code de modif dans une autre page que celle de mon tableau avec l'hyperlien "modify" ?

Merci encore.

Re: Défaut code PHP modification et suppression ne marche pas et pas de messages d'erreurs

par or 1 » 09 août 2016, 23:47

<form action="Mill_Tool_.php" method="POST" href="Mill_Tool_Modify.php?IDnum1='<?php echo $donnees['ID']; ?>'">
la balise form n'a pas d’attribut href.
le formulaire va donc être envoyé vers Mill_Tool_.php.
si le code de mise à jour est dans Mill_Tool_Modify.php, cela va fonctionner beaucoup moins bien.