Modification table access avec PHP

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 table access avec PHP

par GL91 » 09 juil. 2007, 09:33

Bonjour,

Merci beaucoup pour votre aide ça fonctionne!!!!!!

bonne journée.

Gilles.

Merci aux modérateur de passer ce sujet comme Resolu vu que j'etait comme invité au debut de ma question.

par Ryle » 06 juil. 2007, 16:04

Ce n'est pas un problème de point-virgule, mais de guillemets et de parenthèse en trop... la coloration syntaxique des balises [ php ] te permettrait de le voir tout de suite :
elseif ($_POST['Validation'] == "Reject") 
{ 
$sql_update_status = "UPDATE BonCommande SET 
Status = 2, 
Signataire = "$_SESSION['Nom'])" 
WHERE `NumBdc` = ".$_GET['id']; 
} 
Pour délimiter une chaine en sql il te faut utiliser des apostrophes et pas des guillemets... en revanche, les guillemets te permettent de terminer ta chaine et de concaténer une variable à l'aide de points :
" ... Signataire = '" . $_SESSION['Nom'] . "' ... "
@chrislabricole : Tu peux mettre sans problème des retours à la ligne au milieu d'une chaine, ce qui est d'ailleurs bien pratique pour la lisibilité des requêtes sql :
$sql = " SELECT ...
  FROM ...
  WHERE ....
  ORDER BY .... "; // ma chaine se termine ici, pas besoin d'un ';' à la fin de chaque ligne ou de concaténation
Quant au démarrage de la session il n'y a pas d'ordre pour le mettre, il faut juste le faire avant d'envoyer du code html ou d'utiliser $_SESSION, mais ca pourrait très bien être l'avant dernière ligne de ton code ;)

par GL91 » 06 juil. 2007, 16:00

je viens de verifier et j'ai toujours la meme erreur.

gilles.

par @rthur » 06 juil. 2007, 15:51

cela me donne cette erreur Parse error: parse error in c:\intranet\bdcmaintenance_visu.php on line 23

cela vous parle t-il?
Bonjour,

Regarde à la ligne 23 (et éventuellement la ligne précédente), tu as oublié un point-virgule en fin de ligne...

par GL91 » 06 juil. 2007, 15:44

re bonjour,

si je mets ce code:
<?
// On démarre la session
session_start();

include 'connexion.php';
include 'parametre.php';

// Vérouillage
if ( !isset($_SESSION['Nom']) ) {
include 'lock.php';
exit();
}


if ( isset($_POST) && !empty($_POST) ) {
extract($_POST);

// Validation
if ($_POST['Validation'] == "Accept")
{
$sql_update_status = "UPDATE BonCommande SET
Status = 1,
Signataire = "$_SESSION['Nom'])"
WHERE `NumBdc` = ".$_GET['id'];

}

elseif ($_POST['Validation'] == "Reject")
{
$sql_update_status = "UPDATE BonCommande SET
Status = 2,
Signataire = "$_SESSION['Nom'])"
WHERE `NumBdc` = ".$_GET['id'];
}

$result_update_status = odbc_exec($cnx,$sql_update_status);



cela me donne cette erreur Parse error: parse error in c:\intranet\bdcmaintenance_visu.php on line 23

cela vous parle t-il?

Gilles

par GL91 » 06 juil. 2007, 15:37

merci pour vos reponses,

je modifie le code comme celui que j ai en erreur et je le poste.

Gilles.

par chrislabricole » 06 juil. 2007, 15:26

ben déjà, à l'avant dernière inscruction, tu à oublier de refermer la guillemet.. et lde mettre le point firgule
$sql_update_status = "UPDATE BonCommande SET";
au lieu de
$sql_update_status = "UPDATE BonCommande SET 
et le temps que l'on y est, met cela
<?
   // On démarre la session
    session_start();

    include('connexion.php');
    include('parametre.php');
.  .  .
.  .  .
à la place de cela :
<?
    include 'connexion.php';
    include 'parametre.php';

    // On démarre la session
    session_start(); 

par Ryle » 06 juil. 2007, 15:09

Soit je ne comprends pas ce que tu veux faire, soit je ne vois pas du tout ce qui peut te gener...

Le nom dans ta session, tu l'as dans ta variable $_SESSION['Nom'] (dont tu testes d'ailleurs déjà l'existance) et si tu veux le mettre à jour dans ta base, tu fais une requête d'update que tu exécutes, comme tu le fais pour mettre à jour ta table boncommande

Bref, je vois pas ce qui te gène :)

par chrislabricole » 06 juil. 2007, 15:09

les sessions marchent ?
il y a t-il un message d'erreur ?

Modification table access avec PHP

par GL91 » 06 juil. 2007, 14:44

Bonjour,

J'ai un petit soucis a vous soumettre:

je voudrais mettre a jour dans ma base access le nom de la session que je voudrait recuperer dans ce code Comment faire? merci d'avance.

Gilles.
<?
	include 'connexion.php';
	include 'parametre.php';

	// On démarre la session
	session_start();

		// Vérouillage
	if ( !isset($_SESSION['Nom']) ) {
		include 'lock.php';
		exit();
	}
	
	
	if ( isset($_POST) && !empty($_POST) ) {
		extract($_POST);
			
		// Validation
		if ($_POST['Validation'] == "Accept")
		{
			$sql_update_status = "UPDATE BonCommande SET
																									Status = 1
						WHERE `NumBdc` = ".$_GET['id'];
			
		}
		
		elseif ($_POST['Validation'] == "Reject")
		{
			$sql_update_status = "UPDATE BonCommande SET
																									Status = 2
																									WHERE `NumBdc` = ".$_GET['id'];
		}
		
		$result_update_status = odbc_exec($cnx,$sql_update_status);