Page 1 sur 1

Probleme de BDD chez Strato..

Posté : 11 avr. 2009, 12:41
par sephi
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 !

Posté : 11 avr. 2009, 16:20
par Ryle
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

Posté : 14 avr. 2009, 23:01
par Invité
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 ...

Posté : 14 avr. 2009, 23:09
par @rthur
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...