par
user541 » 22 déc. 2007, 12:31
Hé ben, c'est que ça concerne autre chôse.. format du tableau, traitement des données, config du serveur, va savoir.
Ok c'est un peu la réponse que j'attendais, il faut que je vérifie tout ca une nouvelle fois mais pourtant la structure des tables semble correct, les scripts aussi, c'est vraiment chiant comme problème...
Mais c'est que rien qu'avec ça, on va pas trouver.. sauf si c'est une devinette.
Bien sûr je comprend cela
J'ai fait plusieurs tests et j'ai isolé le soucis sur une seule table, je suis capable de faire fonctionner l'insertion avec une requête dite manuelle, alors que l'insertion effectuée par une requête créée dynamiquement ne marche pas...
Le dernier test fait en date est le suivant :
<?php
...
...
...
$requete="INSERT INTO communication VALUES('',
'".$this->acteur->get_login_utilisateur()."',
'".$this->destinataire->get_login_utilisateur()."',
".dateNull($date_communication).",
'".$this->type_communication."',
'".$titre_mail."',
'".$this->msg_communication."',
".$type_suivi_relance.",
".$id_suivi_relance.",
".$type_mail_sms_communication.",
".$id_mail_sms_communication.",
'".$this->traitement_communication."',
'".$this->is_sms_facturable."');";
echo "_______________________________________________________________________________<br/>";
print_r($requete);
mysql_query($requete) or die('Erreur insertion communication'); // je me retourve avec un backslashe dans la bdd pour le champ correspondant à la variable $titre_mail
$this->id_communication=mysql_insert_id();
$marche="Annulation d\'une affiliation avec un de vos affiliés";
if(strcmp($titre_mail, $marche) == 0)
echo 'PAREIL !'; // affiche ceci, donc $titre_mail == $marche
else
echo 'PAS PAREIL !';
// test 'manuel'
$reqi="INSERT INTO communication VALUES('',
'".$this->acteur->get_login_utilisateur()."',
'".$this->destinataire->get_login_utilisateur()."',
".dateNull($date_communication).",
'".$this->type_communication."',
'".$marche."',
'dsdsdsdsds',
".$type_suivi_relance.",
".$id_suivi_relance.",
".$type_mail_sms_communication.",
".$id_mail_sms_communication.",
'".$this->traitement_communication."',
'".$this->is_sms_facturable."');";
echo "_______________________________________________________________________________<br/>";
print_r($reqi);
mysql_query($reqi) or die(mysql_error()); // insère proprement dans la BDD (pas de backslashe en trop)
?>
Chié non ?
A titre personnel je préfère les single quote, le code ci-dessus est fait avec des double-quote dans un soucis de debugage.
Une autre idée ?
[quote="Berzemus"]Hé ben, c'est que ça concerne autre chôse.. format du tableau, traitement des données, config du serveur, va savoir.[/quote]Ok c'est un peu la réponse que j'attendais, il faut que je vérifie tout ca une nouvelle fois mais pourtant la structure des tables semble correct, les scripts aussi, c'est vraiment chiant comme problème...
[quote="Berzemus"]Mais c'est que rien qu'avec ça, on va pas trouver.. sauf si c'est une devinette.[/quote]Bien sûr je comprend cela
J'ai fait plusieurs tests et j'ai isolé le soucis sur une seule table, je suis capable de faire fonctionner l'insertion avec une requête dite manuelle, alors que l'insertion effectuée par une requête créée dynamiquement ne marche pas...
Le dernier test fait en date est le suivant :
[php]
<?php
...
...
...
$requete="INSERT INTO communication VALUES('',
'".$this->acteur->get_login_utilisateur()."',
'".$this->destinataire->get_login_utilisateur()."',
".dateNull($date_communication).",
'".$this->type_communication."',
'".$titre_mail."',
'".$this->msg_communication."',
".$type_suivi_relance.",
".$id_suivi_relance.",
".$type_mail_sms_communication.",
".$id_mail_sms_communication.",
'".$this->traitement_communication."',
'".$this->is_sms_facturable."');";
echo "_______________________________________________________________________________<br/>";
print_r($requete);
mysql_query($requete) or die('Erreur insertion communication'); // je me retourve avec un backslashe dans la bdd pour le champ correspondant à la variable $titre_mail
$this->id_communication=mysql_insert_id();
$marche="Annulation d\'une affiliation avec un de vos affiliés";
if(strcmp($titre_mail, $marche) == 0)
echo 'PAREIL !'; // affiche ceci, donc $titre_mail == $marche
else
echo 'PAS PAREIL !';
// test 'manuel'
$reqi="INSERT INTO communication VALUES('',
'".$this->acteur->get_login_utilisateur()."',
'".$this->destinataire->get_login_utilisateur()."',
".dateNull($date_communication).",
'".$this->type_communication."',
'".$marche."',
'dsdsdsdsds',
".$type_suivi_relance.",
".$id_suivi_relance.",
".$type_mail_sms_communication.",
".$id_mail_sms_communication.",
'".$this->traitement_communication."',
'".$this->is_sms_facturable."');";
echo "_______________________________________________________________________________<br/>";
print_r($reqi);
mysql_query($reqi) or die(mysql_error()); // insère proprement dans la BDD (pas de backslashe en trop)
?>[/php]
Chié non ? :cry:
A titre personnel je préfère les single quote, le code ci-dessus est fait avec des double-quote dans un soucis de debugage.
Une autre idée ?