Probleme de BDD chez Strato..

Petit nouveau ! | 1 Messages

11 avr. 2009, 12:41

Bonjour a tous,


J'ai du passer de Lycos a strato car lycos fermait...


Mais au niveau des bases, il y a un problème :


Voici ma page de formulaire d'enregistrement dans la base :


<?php
mysql_connect("rdbms.strato.de", "****", "****"); // Connexion
mysql_select_db("DB536018"); // Sélection
mysql_query("SET NAMES 'UTF8'");
$reponse = mysql_query("SELECT * FROM machines WHERE ref='$ref'");

$modif_nom = $_POST['modif_nom'];
$modif_nomde = $_POST['modif_nomde'];
$modif_nomen = $_POST['modif_nomen'];
$modif_ref = $_POST['modif_ref'];
$modif_desc = $_POST['modif_desc'];
$modif_descde = $_POST['modif_descde'];
$modif_descen = $_POST['modif_descen'];
$modif_photo = $_POST['modif_photo'];
$modif_vnom = $_POST['modif_vnom'];
$modif_vnom2 = $_POST['modif_vnom2'];
$modif_vnom3 = $_POST['modif_vnom3'];
$modif_vnomde = $_POST['modif_vnomde'];
$modif_vnomde2 = $_POST['modif_vnomde2'];
$modif_vnomde3 = $_POST['modif_vnomde3'];
$modif_vnomen = $_POST['modif_vnomen'];
$modif_vnomen2 = $_POST['modif_vnomen2'];
$modif_vnomen3 = $_POST['modif_vnomen3'];
$modif_type = $_POST['modif_type'];
$modif_typede = $_POST['modif_typede'];
$modif_typeen = $_POST['modif_typeen'];
$id = $_POST['ID'];
echo $modif_desc
?>
<?php

mysql_query("UPDATE `DB536018`.`machines` SET `nom` = '$modif_nom',
`vnom` = '$modif_vnom',
`vnom2` = '$modif_vnom2',
`vnom3` = '$modif_vnom3',
`ref` = '$modif_ref',
`type` = '$modif_type',
`photo` = '$modif_photo',
`desc` = '$modif_desc',
`nomde` = '$modif_nomde',
`vnomde` = '$modif_vnomde',
`vnomde2` = '$modif_vnomde2',
`vnomde3` = '$modif_vnomde3',
`typede` = '$modif_typede',
`descde` = '$modif_descde',
`nomen` = '$modif_nomen',
`vnomen` = '$modif_vnomen',
`vnomen2` = '$modif_vnomen2',
`vnomen3` = '$modif_vnomen3',
`typeen` = '$modif_typeen',
`descen` = '$modif_descen' WHERE `machines`.`ID` ='$ID' LIMIT 1"); // Requête SQL
mysql_close(); // Déconnexion
?>


Le information envoyée par $post arrivent bien a cette page, donc le problème ne se situe pas avant... Mais aucune information n'est enregistrée dans ma base ! Et sa marchais sous Lycos..

La fonction UPDATE n'a pas l'air de fonctionner.. J'ai vu quelque part qu'il avait mis des régisseur global (qu'est-ce ?) est-ce pour sa?


Je vois les information de ma BDD, donc les login sont bon :) je vous remercie, strato c'est une vrai galère...


Merci !

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

11 avr. 2009, 16:20

Modération :
sephi, afin d'améliorer la lisibilité de ton message,
pense à utiliser les balises [code] ou [php] (selon le langage utilisé).

Elles sont disponibles au-dessus de la zone de saisie de ton message
lorsque tu postes un nouveau message.

Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "PHP débutant".



Concernant ton problème il vient à mon avis du fait que dans ta requête tu utilises $ID alors que cette variable n'est pas définie : la valeur de $_POST['ID'] est stockée dans $id (et non $ID).

Sinon, pour en savoir plus sur register globals, tu peux lire cet article de la FAQ : http://www.phpfrance.com/forums/voir_sujet-48.php
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Invité
Invité n'ayant pas de compte PHPfrance

14 avr. 2009, 23:01

On dirai que les instruction ne veulent pas entre dans la BDD...

Pourtant, en copian collant dans myphpadmin, les codes s'executent :$

une solution? :(

merci ...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

14 avr. 2009, 23:09

Bonjour,

Remplace
`descen` = '$modif_descen' WHERE `machines`.`ID` ='$ID' LIMIT 1"); // Requête SQL 
par
`descen` = '$modif_descen' WHERE `machines`.`ID` ='$ID' LIMIT 1") or die("Erreur MySQL : ".mysql_error()); // Requête SQL 
et
mysql_connect("rdbms.strato.de", "****", "****"); // Connexion
mysql_select_db("DB536018"); // Sélection 
par
mysql_connect("rdbms.strato.de", "****", "****") or die("Erreur de connexion MySQL : ".mysql_error()); // Connexion
mysql_select_db("DB536018") or die("Erreur MySQL de sélection de BDD: ".mysql_error()); // Sélection 
ça devrait t'afficher les erreurs MySQL si il y en a...
Quand tout le reste a échoué, lisez le mode d'emploi...