requete de suppression

Avatar du membre
ViPHP
ViPHP | 3008 Messages

31 oct. 2008, 13:12

Si tu as un enregistrement avec id=1 teste
Update recrutement Set nom='titi' where id=1
Si ça ne marche pas sous phpmyadmin je donne ma langue au chat...

Invité
Invité n'ayant pas de compte PHPfrance

31 oct. 2008, 13:15

Si tu as un enregistrement avec id=1 teste
Update recrutement Set nom='titi' where id=1
Si ça ne marche pas sous phpmyadmin je donne ma langue au chat...
Nombre d'enregistrements affectés : 1 (Traitement en 0.0009 sec.)

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

31 oct. 2008, 13:20

Eh ben, donc, ça marche !!! :D

Invité
Invité n'ayant pas de compte PHPfrance

31 oct. 2008, 13:22

Eh ben, donc, ça marche !!! :D
mais pourquoi cette requete ne marche pas?
$requete = "Update recrutement Set nom='$nom' where id=$id";

Invité
Invité n'ayant pas de compte PHPfrance

31 oct. 2008, 13:26

Les modifications s'effectuent soit avec du vide soit avec Null

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

31 oct. 2008, 13:28

Parce que dans mon premier message, j'ai pourtant clairement dit :
Toujours les mêmes problèmes... :(

Alors :
1. Vérifier le type des valeurs des variables
2. Extraire les variables des chaines

Si recrutement.id est un numérique, alors pas d'apostrophes !
$id = (isset($_GET['id']) ? $_GET['id'] : 0);
$sql = "DELETE FROM recrutement WHERE id=".$_GET['id']; 
:evil: :evil: :evil: :evil: :evil:

Invité
Invité n'ayant pas de compte PHPfrance

31 oct. 2008, 13:36

j'ai mis ca:
$id = (isset($_GET['id']) ? $_GET['id'] : 0);
///


///
$requete = "Update recrutement Set nom='$nom' WHERE id=".$_GET['id'];

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

31 oct. 2008, 14:34

La variable $nom n'était pas extraite de la chaine.
Comme elle était contenue entre deux apostrophes, elle n'était pas interprétée.

Ceci devrait fonctionner :
$id = (isset($_GET['id']) ? $_GET['id'] : 0);
$requete = "UPDATE recrutement SET nom='".$nom."' WHERE id=".$id;

Invité
Invité n'ayant pas de compte PHPfrance

31 oct. 2008, 18:20

La variable $nom n'était pas extraite de la chaine.
Comme elle était contenue entre deux apostrophes, elle n'était pas interprétée.

Ceci devrait fonctionner :
$id = (isset($_GET['id']) ? $_GET['id'] : 0);
$requete = "UPDATE recrutement SET nom='".$nom."' WHERE id=".$id;
le champ nom se change en vide, j ai meme ajoute un pti truc:
if(empty($nom))  
{  
echo '<font color="red">Erreur, la page est vide!</font>';  
}
else
{ 

///


$requete = "UPDATE recrutement SET nom='".$nom."' WHERE id=".$id; 

et ca donne: Erreur, la page est vide!

ca veut dire que nom ne passe pas d une page a l autre, donc je retourne a ma question des le debut

Avatar du membre
ViPHP
ViPHP | 3008 Messages

31 oct. 2008, 18:30

Comme on l'a vu depuis le début, pour l'ID tu as fais :
$id = isset($_POST['id']) ? $_POST['id'] : 0 ;
Pour le nom comment t'y es tu pris ?

Invité
Invité n'ayant pas de compte PHPfrance

31 oct. 2008, 18:31

Comme on l'a vu depuis le début, pour l'ID tu as fais :
$id = isset($_POST['id']) ? $_POST['id'] : 0 ;
Pour le nom comment t'y es tu pris ?
isset($_POST['nom']) ? $nom=$_POST['nom']:$nom='Null';

Invité
Invité n'ayant pas de compte PHPfrance

31 oct. 2008, 18:34

c'est bon maintenant ca marche, merci a vous tous

Avatar du membre
ViPHP
ViPHP | 3008 Messages

31 oct. 2008, 18:41

C'est cool que ça marche enfin, perso vu la réponse que tu m'as donné, ça ne donne pas vraiment envie de t'aider à résoudre le problème. On t'a bien expliqué comment l'opérateur ternaire fonctionnait et tu nous remets ce code...c'est abusé

La prochaine fois, avant de poser des questions à la seconde, réfléchit un peu avant et suit les directives données pour corriger ton code.