Cherchez l'erreur

Résolu/Fermé
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 - 26 juin 2008 à 21:35
[o.o]REplay Messages postés 357 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 20 juillet 2009 - 2 juil. 2008 à 08:11
Bonjour,

tout est dans le titre :) merci à ceux qui joueront avec moi -_-'

if(isset($texte) and isset($date) and strlen($texte)>10 )
{
$sql="insert into summer (id,type,datas) values ('','texte','".$texte."//".$date."')";
/*->ça plante sur cette ligne là:*/ (mysql_query($sql)=="true") ? echo "Sent" : echo "Failed";

}

4 réponses

Nico_ Messages postés 1219 Date d'inscription vendredi 29 décembre 2006 Statut Membre Dernière intervention 15 mars 2016 189
26 juin 2008 à 21:47
bonsoir,

essai avec ceci mais je ne suis pas du tout sur:
$sql="insert into summer (id,type,datas) values (' ','$type','$texte','$date.')";
/*->ça plante sur cette ligne là:*/ (mysql_query($sql)=="true") ? echo "Sent" : echo "Failed";


voici la ligne que j'utilise pour ajouter les données dans ma BDD:
mysql_query("INSERT INTO table VALUES(' ','$date','$formateur','$message')");

voici le code complet que j'utilise pour les ajouts:

<?php 
header ("Refresh: 2;URL=index.php");//redirection dans 2 secondes sur la page index.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>confirmation d'envoi</title>
</head>
<?
$date = $_POST['date']; // recup du champs date
$formateur = $_POST['formateur']; recup du champs nom du formateur
$message = nl2br($_POST['message']); // nl2r = concerve la mise en forme du texte dans le champs message
mysql_connect("localhost", "IDENTIFIANT", "MDP"); // Connexion à MySQL
mysql_select_db("BASE"); // Sélection de la base
$reponse = mysql_query("SELECT * FROM table"); // Requête SQL
mysql_query("INSERT INTO table VALUES(' ','$date','$formateur','$message')");
mysql_close(); // Déconnexion de MySQL
echo'<p class="Style21">Votre message à été ajouter. Vous allez être redirigé. Bonne journée'
?>


bonne soirée
0
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 58
26 juin 2008 à 22:55
Salut Nico,

Merci d'avoir joué avec nous :D mais essaie encore ;) l'erreur est pas sur la requête, celle ci se passe bien :) l'erreur est sur le contrôle; le if.. else réduit^^. Le code fonctionne avec un if... else version académique, mais elle ne m'intéresse pas pour ce projet :) j'ai besoin d'une version réduite :).

Sinon, dans ton exemple de code, pourquoi faire une redirection?

Bonne soirée à toi aussi :)
0
[o.o]REplay Messages postés 357 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 20 juillet 2009 28 > Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011
27 juin 2008 à 00:21
mysql_query($sql,$link) -.-
j'ai gagné quoi? :D
0
Nico_ Messages postés 1219 Date d'inscription vendredi 29 décembre 2006 Statut Membre Dernière intervention 15 mars 2016 189 > Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011
27 juin 2008 à 12:20
bonjour,

la redirection sers pour mon code a moi, il te suffi de l'enlever !

bonne journée
0
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 58 > [o.o]REplay Messages postés 357 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 20 juillet 2009
27 juin 2008 à 12:21
Rien :) la connexion est établie avant le query, donc pas besoin de la refaire :) (j'l'ai pas mise parce qu'elle est tout en haut du fichier^^)
0
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 58 > Nico_ Messages postés 1219 Date d'inscription vendredi 29 décembre 2006 Statut Membre Dernière intervention 15 mars 2016
27 juin 2008 à 12:23
Salut Nico :)

J'ai bien compris que la redirection servait à ton code :$ mais j'croise pas souvent des gens qui se servent de redirection, alors j'en profite pour te demander quelle en est l'utilité exactement^^ tu sépares tes formulaires de tes traitements de données?

Bonne journée à toi aussi^^
0
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 58
1 juil. 2008 à 12:05
up^^
0
[o.o]REplay Messages postés 357 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 20 juillet 2009 28
1 juil. 2008 à 13:19
ça fait une semaine que t'es dessus -.- j'y crois pas.

(mysql_query($sql)=="true") ? echo "Sent" : echo "Failed";

Bref, l'erreur vient de ton utilisation de ?:;
tu peux pas mettre de echo entre les ? : et : ;

En effet, l'opérateur ? permet de RENVOYER une valeur en fonction du test :)
L'utilisation cest:

$message=((mysql_query($sql)=="true") ?"Sent" :"Failed";
echo $message;

voilà.
Bon et j'ai gagné quoi maintenant? ^^
0
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 58
1 juil. 2008 à 19:57
"ça fait une semaine que t'es dessus -.- j'y crois pas."

J'ai une vie en dehors :D mais c'est vrai que j'ai pas cherché depuis que j'ai posté ici, vu que c'était un peu la dernière chance...


Merci pour ta réponse, elle s'est révélée exacte suite à un petit retrait de parenthèse en surplus^^ ;).
J'avais déjà utilisé cet opérateur une ou deux fois auparavant, mais ça remonte à longtemps^^ ceci dit je crois l'avoir utilisé différement. Si je le retrouve dans mes vieilles lignes de code, je posterais ici l'utilisation que j'en avais faite^^

Malheureusement, vu les temps qui courrent, il va m'être difficile de t'offrir davantage que mon estime^^ En revanche, j'aimerais bien qu'on échange nos adresses, il est possible que j'ai d'autres choses à te proposer :) (non, pas mon corps! :p)

Bonne journée, et merci à tous ceux qui ont eu la gentillesse de participer à ce poste, et me faire ainsi progresser davantage en PHP^^

*c'est un petit pas pour le PHP, mais un grand pas pour l'aspirant codeur que je suis!*
0
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 58 > Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011
1 juil. 2008 à 19:59
*ferme le fil*

Le problème provient de l'utilisation de echo dans le test comprennant l'opérateur "?" *détails plus haut^^*
0
[o.o]REplay Messages postés 357 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 20 juillet 2009 28 > Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011
2 juil. 2008 à 08:11
Ok, ben si tu as une question, tu me la pose par ce site, ou par replay.homeunix.com :) (tu met un commentaire quelque part ^^ ).

Bonne journée :)
0
TechAndCo Messages postés 252 Date d'inscription jeudi 3 mai 2007 Statut Membre Dernière intervention 4 octobre 2010 20
1 juil. 2008 à 13:27
Salut:


if(isset($texte) and isset($date) and strlen($texte)>10 )
{
$sql="insert into summer (id,type,datas) values ('','texte','".$texte."//".$date."')";

if ($sql2 = mysql_query($sql)){
echo 'Ok';
} else {
echo 'Erreur';
}

0
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 58
1 juil. 2008 à 19:45
Merci d'avoir participé :) mais ce n'était pas le type de réponse recherchée^^
(trop longue ;)) en tous les cas, ça m'aide quand même :)
0