Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/07/2007, 18h18   #1
Invité de passage
 
Inscription : juillet 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 5
Points : 1
Points : 1
Par défaut [SQL] UPDATE via formulaire PHP

J'aun un problème, je veux mettre à jour une BD via un formulaire php. Cela fonctionne sans probleme et là pas moyen. J'ai tout essayé rien a faire.

J'ai essayé de tester mes variables au final (print "$texte"; fin de la 2e page) et le texte modifié s'affiche parfaitement mais il n'y a aucune conséquence dans la BD.

J'ai essayé aussi sans variable en mettant dans la requete update du texte pur et ca fonctionne pas.

Merci de votre aide

page1: ad-modif.php

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 
	  <?
	  	$id=$_GET['id'];
 
		require("connect.php");
 
		$requete = "select * from blog where id='$id' ";
		$envoi = mysql_query($requete);
		$tableau = mysql_fetch_array($envoi);
		$photo = $tableau["photo"];
		$cat2 = $tableau["titre"];
		$cat = $tableau["cat"];
		$texte = $tableau["texte"];
 
		echo "<form name=\"form\" method=\"post\" enctype=\"multipart/form-data\" action=\"ad-modif2.php?id=$id\">";
			echo "<table border=\"0\">\n";
 
				echo "<tr>"; 
				echo "<td><img src='blogimage/$photo'></td>\n";
				echo "</tr>";
 
				echo "<tr>"; 
				echo "<td> Titre: </td>";
				echo "<td><input name=\"cat2\" type=\"texte\" id=\"cat2\" value=\"$cat2\"></td>";
				echo "</tr>";
 
				echo "<tr>"; 
				echo "<td> Catégorie: </td>";
				echo "<td><input name=\"cat\" type=\"texte\" id=\"cat\" value=\"$cat\"></td>";
				echo "</tr>";
 
				echo "<tr>"; 
				echo "<td> Texte: </td>";
				echo "<td><textarea name=\"texte\" id=\"texte\" cols=\"100\" rows=\"10\">$texte</textarea></td>";
				echo "</tr>";
 
				echo "<tr>";		
				echo "<td>&nbsp;</td>";
				echo "<td><input class=\"bouton2\" type=\"submit\" name=\"Submit\" value=\"Modifier\"> 
				<input class=\"bouton2\" type=\"reset\" name=\"Submit2\" value=\"Annuler\"></td>";
				echo "</tr>";
 
			echo "</table> \n";
			echo "</form>";
 
	  ?>

Page2 : ad-modif.php

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?
		$id = $_POST['id'];
		$texte = $_POST['texte'];
		$cat = $_POST['cat'];
		$titre = $_POST['cat2'];
 
 
		if ($titre == ""){
			exit("<font class=centreTexte face=verdana>Veuillez entrer un titre !</font><br>");
		} 
		else {
			if ($cat == ""){
				exit("<font class=centreTexte face=verdana>Veuillez entrer une catégorie !</font><br>");
			} 
			else {
				if ($texte == ""){
					exit("<font class=centreTexte face=verdana>Veuillez entrer du texte !</font><br>");
 
				} 
				else {
	  				require("connect.php");
 
					$sql=mysql_query("UPDATE blog SET titre='$titre', cat='$cat', texte='$texte' WHERE id='$id'") or die(mysql_error());
 
					// affichage du résultat
					if ($sql) { 
						echo "Vous avez bien modifié votre message";
 
						print "$texte";
 
					} else {
							echo "La modification a échoué";
						}
 
				}
			}	
		}
 
 
 
 
 
	  ?>
eizenhower est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 18h34   #2
Membre Expert
 
Avatar de Anthony.Desvernois
 
Homme Anthony Desvernois
Ingénieur sécurité & risque
Inscription : juin 2007
Messages : 1 501
Détails du profil
Informations personnelles :
Nom : Homme Anthony Desvernois
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur sécurité & risque
Secteur : Finance

Informations forums :
Inscription : juin 2007
Messages : 1 501
Points : 2 011
Points : 2 011
Citation:
Envoyé par eizenhower
J'aun un problème, je veux mettre à jour une BD via un formulaire php. Cela fonctionne sans probleme et là pas moyen. J'ai tout essayé rien a faire.

J'ai essayé de tester mes variables au final (print "$texte"; fin de la 2e page) et le texte modifié s'affiche parfaitement mais il n'y a aucune conséquence dans la BD.

J'ai essayé aussi sans variable en mettant dans la requete update du texte pur et ca fonctionne pas.

Merci de votre aide
Bonjour,

Je ne comprends le "cela fonctionne sans probleme et la y a pas moyen".

Peut tu donner ton message d'erreur et le contenu de tes variables ?
__________________
"Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
"Less is more" Ludwig Mies Van Der Rohe

Risk & Security Mgmt
Anthony.Desvernois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 18h55   #3
Invité de passage
 
Inscription : juillet 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 5
Points : 1
Points : 1
Désole, je voulais dire que j'ai déja utiliser le même système et j'ai eu aucun problème et mtn ca coince.

J'ai aucun message d'erreur, il me met que la mise a jour s'est bien effectué donc je suppose que la requete sql a été lancé.
eizenhower est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 18h56   #4
Membre Expert
 
Avatar de Anthony.Desvernois
 
Homme Anthony Desvernois
Ingénieur sécurité & risque
Inscription : juin 2007
Messages : 1 501
Détails du profil
Informations personnelles :
Nom : Homme Anthony Desvernois
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur sécurité & risque
Secteur : Finance

Informations forums :
Inscription : juin 2007
Messages : 1 501
Points : 2 011
Points : 2 011
Tente une query Show errors et/ou un show warnings pour voir.

Et que valent tes variables ?
__________________
"Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
"Less is more" Ludwig Mies Van Der Rohe

Risk & Security Mgmt
Anthony.Desvernois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 18h59   #5
Invité de passage
 
Inscription : juillet 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 5
Points : 1
Points : 1
Dans mes variables il y a du texte. Lorsque je fais un print en fin de code, le contenu des variables est bien correcte donc je suppose que cela ne vient pas de la.
eizenhower est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 19h03   #6
Membre Expert
 
Avatar de Anthony.Desvernois
 
Homme Anthony Desvernois
Ingénieur sécurité & risque
Inscription : juin 2007
Messages : 1 501
Détails du profil
Informations personnelles :
Nom : Homme Anthony Desvernois
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur sécurité & risque
Secteur : Finance

Informations forums :
Inscription : juin 2007
Messages : 1 501
Points : 2 011
Points : 2 011
Et donc, par exemple, une requete qui passe pas, y a quoi comme valeurs ?

Que donnes les show errors et show warnings ?
__________________
"Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
"Less is more" Ludwig Mies Van Der Rohe

Risk & Security Mgmt
Anthony.Desvernois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 19h07   #7
Invité de passage
 
Inscription : juillet 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 5
Points : 1
Points : 1
Je viens de mettre exactement le mm code que celui utilisé sur un autre site que j'ai fait, et je pige pas, ca fonctionne parfaitement sur ce site la et quand je l'adapte sur le mien, même résultat, les champs ne se mettent pas à jour.

Le probleme ne vient donc pas du code en lui même, je pense plutot a un probleme de base de donné mais où.....
eizenhower est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 19h16   #8
Membre Expert
 
Avatar de Anthony.Desvernois
 
Homme Anthony Desvernois
Ingénieur sécurité & risque
Inscription : juin 2007
Messages : 1 501
Détails du profil
Informations personnelles :
Nom : Homme Anthony Desvernois
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur sécurité & risque
Secteur : Finance

Informations forums :
Inscription : juin 2007
Messages : 1 501
Points : 2 011
Points : 2 011
Et donc ^^ ?
__________________
"Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
"Less is more" Ludwig Mies Van Der Rohe

Risk & Security Mgmt
Anthony.Desvernois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 20h27   #9
Invité de passage
 
Inscription : juillet 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 5
Points : 1
Points : 1
Merci de ton soutien cela fonctionne comme par enchantement, à mon avis cela devait venir de l'hebergeur c'est pas possible outre mesure !
eizenhower est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 20h54   #10
Membre Expert
 
Avatar de Anthony.Desvernois
 
Homme Anthony Desvernois
Ingénieur sécurité & risque
Inscription : juin 2007
Messages : 1 501
Détails du profil
Informations personnelles :
Nom : Homme Anthony Desvernois
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur sécurité & risque
Secteur : Finance

Informations forums :
Inscription : juin 2007
Messages : 1 501
Points : 2 011
Points : 2 011
Ou alors j'ai une aura distante positive
__________________
"Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
"Less is more" Ludwig Mies Van Der Rohe

Risk & Security Mgmt
Anthony.Desvernois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2007, 10h35   #11
Invité régulier
 
Étudiant
Inscription : juillet 2007
Messages : 8
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2007
Messages : 8
Points : 5
Points : 5
J'ai un peu le même problème que toi sauf que je suis en local. Je ne fais que des copié collé de mes pages et je change les noms de variables et des adresses de pages tout marche sauf pour une! Je ne comprends pas j'ai revérifié encore mes noms de variables et d'adresse et pourtant tout est bon! J'ai tout redémarré mais rien à faire!
Nutella64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2007, 11h08   #12
Membre Expert
 
Avatar de Anthony.Desvernois
 
Homme Anthony Desvernois
Ingénieur sécurité & risque
Inscription : juin 2007
Messages : 1 501
Détails du profil
Informations personnelles :
Nom : Homme Anthony Desvernois
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur sécurité & risque
Secteur : Finance

Informations forums :
Inscription : juin 2007
Messages : 1 501
Points : 2 011
Points : 2 011
As-tu la possibilite de tester sur un autre serveur ?
__________________
"Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
"Less is more" Ludwig Mies Van Der Rohe

Risk & Security Mgmt
Anthony.Desvernois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2007, 11h11   #13
Invité régulier
 
Étudiant
Inscription : juillet 2007
Messages : 8
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2007
Messages : 8
Points : 5
Points : 5
non je peux pas...
Nutella64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2007, 11h25   #14
Invité régulier
 
Étudiant
Inscription : juillet 2007
Messages : 8
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2007
Messages : 8
Points : 5
Points : 5
Je vous mets mon code si vous voulez :

page choix_ss_traitant.php :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
<form method="post" action="update_ss_traitant.php">
  <p><center>
    <h2> Choisissez le sous-traitant à modifier</h2>
    Quel est son ID? : <input name="ID" /><br />
    Modifier le sous-traitant (n'oubliez pas de remplir tous les champs) :<br \>
    Nom : <input name="nom" /><br />
    Type: <input name="type" /><br />
    Site: <input name="site" /><br /> 
    Commentaires :<br />
    <textarea name="commentaire" rows="8" cols="35"></textarea> <br />
    <input type="submit" value="Envoyer" />
    <input type="reset" value="Annuler" />
    <input type="hidden" name="ajout" value="1" />
  </center></p>
</form>
<?
   mysql_connect("localhost", "root", "");
   mysql_select_db("sds");
   $retour = mysql_query('SELECT COUNT(*) AS nb_ss_traitants FROM ss_traitants');
    $donnees = mysql_fetch_array($retour);
?>
<table>
  <tr>
	<td class="sds"> ID </td>
	<td class="sds"> Nom </td>
	<td class="sds"> Type</td>
	<td class="sds"> Site</td>
	<td class="sds"> Commentaires</td>
  </tr>
  <?php
	$reponse = mysql_query('SELECT * FROM ss_traitants ORDER BY nom');
	while ($donnees = mysql_fetch_array($reponse)){
   ?>
   <tr>
	<td class="affiche"><center><?php echo '<p><strong>' . $donnees['ID'] . '</p>';?></center></td>
	<td class="affiche"><center><?php echo $donnees['nom'];?></center></td>
        <td class="affiche"><?php echo $donnees['type'];?></td>
	<td class="affiche"><center><?php if($donnees['site']){?><a href="<?php echo  $donnees['site'] ;?>">Voir le site</a><?php } ?></center></td>
	<td class="affiche"><center><?php echo  $donnees['commentaire'] ;?></center></td>
<?php													
	}
        mysql_close();
?>
et la page update_ss_traitant.php :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
<?
  mysql_connect("localhost", "root", "");
  mysql_select_db("sds");
  if (isset($_POST['nom'])){
	$ID = mysql_real_escape_string(htmlspecialchars($_POST['ID']));
    $nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
	$type = mysql_real_escape_string(htmlspecialchars($_POST['type']));
    $site=mysql_real_escape_string(htmlspecialchars($_POST['site']));
	$commentaire=mysql_real_escape_string(htmlspecialchars($_POST['commentaire']));
    $commentaire = nl2br($commentaire);
    $ajout=(isset($_POST['ajout']) ? $_POST['ajout'] : 0);
    $rekuse="UPDATE ss_traitants SET  nom='$nom', type='$type', site='$site', commmentaire='$commentaire' WHERE ID=$ID";
    if($ajout==1){
      $resuse=mysql_query($rekuse);
      header("Location: sous_traitants.php");
      }
    }
      mysql_close();
?>
Nutella64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h24.


 
 
 
 
Partenaires

Hébergement Web