Page 1 sur 1
Bug PDO 3
Posté : 15 nov. 2012, 15:19
par thebarbarius
ALors j'ai bien avancé.
Pour rappek voici mon code :
Code : Tout sélectionner
function editReiki()
{
$dbh = mysql::getInstance();
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$sql = "SELECT *
FROM `view`
WHERE title = 'reiki'";
$requete = $dbh->prepare($sql);
$requete->execute();
$row = $requete->fetch(PDO::FETCH_ASSOC);
$text = $row['text'];
//$textEncoder = addslashes($text);
$textEncoder = htmlentities($textt);
$dbh2 = mysql::getInstance();
$dbh2->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$sql2 = "UPDATE `view`
SET `text` = ?
WHERE `title` = 'reiki'";
$requete2 = $dbh2->prepare($sql2);
$requete2->execute(array($textEncoder));
echo 'Enregistrement effestué.';
?><!-- <SCRIPT LANGUAGE="JavaScript">
document.location.href="?p=reiki"
</SCRIPT> -->
<?php
}
Plus d'erreur mais $text est vide et $textEncoder tu $tpx aussi pourquoi ?
Re: Bug PDO 3
Posté : 15 nov. 2012, 15:56
par xTG
Parce que $testt n'existe pas.
Re: Bug PDO 3
Posté : 15 nov. 2012, 15:59
par Mazarini
error_reporting(E_ALL) pendant le développement, ca permet de trouver ce genre d'erreur très facilement.
Re: Bug PDO 3
Posté : 15 nov. 2012, 17:05
par thebarbarius
Ok $test est corrigé.
Maintenant pourquoi $row revoie un tableau vide ?
merci
Re: Bug PDO 3
Posté : 15 nov. 2012, 17:42
par xTG
Soit parce que tu n'as pas ouvert de connexion, soit parce que l'enregistrement recherché n'existe pas.
Re: Bug PDO 3
Posté : 15 nov. 2012, 19:56
par thebarbarius
J'ouvre ma connexion ici
Et et j'ai testé ma requete sql dans phpmyadmin et sa retourne bien un resultat.
Donc d'ou viens le probleme ?
Re: Bug PDO 3
Posté : 15 nov. 2012, 20:23
par xTG
Tu appelles une fonction dont on ne connait rien.
Tu peux aussi activer les erreurs PDO, tu trouveras ton bonheur dans la documentation :
http://php.net/pdo
Re: Bug PDO 3
Posté : 15 nov. 2012, 21:19
par thebarbarius
Cette fonction est censé mettre a jour un texte.
Alors j'ai bien avancé.
Maintenant sa met a jour mais seulement les caractere speciaux sont traduit.
SInon impossible de modifier le text.
Code : Tout sélectionner
function editReiki()
{
$dbh = mysql::getInstance();
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$sql = "SELECT *
FROM `view`
WHERE `title` = 'reiki'";
$requete = $dbh->prepare($sql);
$requete->execute();
$row = $requete->fetch(PDO::FETCH_ASSOC);
$text = $row['text'];
//$textEncoder = addslashes($text);
$textEncoder = htmlentities($text);
$dbh2 = mysql::getInstance();
$dbh2->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$sql2 = "UPDATE `view`
SET `text` = ?
WHERE `title` = 'reiki'";
$requete2 = $dbh2->prepare($sql2);
$requete2->execute(array($textEncoder));
var_dump($requete2);
echo 'Enregistrement effestué.';
?><!-- <SCRIPT LANGUAGE="JavaScript">
document.location.href="?p=reiki"
</SCRIPT> -->
<?php
}
Re: Bug PDO 3
Posté : 15 nov. 2012, 22:03
par thebarbarius
ALors j'ai bien avancé.
Pour rappek voici mon code :
Code : Tout sélectionner
function editReiki()
{
$dbh = mysql::getInstance();
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$sql = "SELECT *
FROM `view`
WHERE title = 'reiki'";
$requete = $dbh->prepare($sql);
$requete->execute();
$row = $requete->fetch(PDO::FETCH_ASSOC);
$text = $row['text'];
//$textEncoder = addslashes($text);
$textEncoder = htmlentities($textt);
$dbh2 = mysql::getInstance();
$dbh2->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$sql2 = "UPDATE `view`
SET `text` = ?
WHERE `title` = 'reiki'";
$requete2 = $dbh2->prepare($sql2);
$requete2->execute(array($textEncoder));
echo 'Enregistrement effestué.';
?><!-- <SCRIPT LANGUAGE="JavaScript">
document.location.href="?p=reiki"
</SCRIPT> -->
<?php
}
Plus d'erreur mais $text est vide et $textEncoder tu $tpx aussi pourquoi ?
J'ai resolue ces problemes.
Il me reste une derniere faveur a vous demander...
Quand je modofie le text il n'y a que les caractere qui se font transformer.
Le texte lui ne change jamais.
D'ou sa peut venir ?