SVP, vraiment bizarre, empty ou isset

Résolu
cs_sema Messages postés 110 Date d'inscription mardi 22 mars 2005 Statut Membre Dernière intervention 16 juin 2005 - 4 mai 2005 à 10:44
cs_sema Messages postés 110 Date d'inscription mardi 22 mars 2005 Statut Membre Dernière intervention 16 juin 2005 - 10 mai 2005 à 09:52
hello,

voila le probleme,

j'ai deux champs, lien et texte


Lien,


Résumé,
----

,
<TEXTAREA onkeydown=limite(this,255); onkeyup=limite(this,255); name=texte rows=7 cols=80 ALT="texte"></TEXTAREA>


et à chaque fois que j'insere ça me le met dans la base,

et quand on met rien dans le lien,
il me met un blanc dans ma base:

if(! empty ($lien)) {

$lien = $_POST ["lien"] ;
}
else{
$lien=" ";
}


je voudrai faire la meme chose pour le texte,
mais quand je fais la meme chose, ça ne marche pas

if (! empty ($texte ) {

$texte = $POST ["texte"] ;
}
else {
$texte = " " ;
}

peut etre que le empty ne marche pas avec les textarea, j'ai essayé de mettre isset, rien ne marche,

j'espere que je me suis fais bien comprendre

merci d'avance pour votre aide

13 réponses

willowman Messages postés 143 Date d'inscription vendredi 5 juillet 2002 Statut Membre Dernière intervention 18 mars 2006 1
9 mai 2005 à 12:03
Re !



Une suggestion toute bete (mais qui a son importance !!!)

Et si juste avant d'executer ta requete SQL, tu initialises ta variable $texte avec une valeur !?



genre : $texte = "du texte";



Et qu'ensuite tu executes ta requete, que dit le driver ODBC ??



Si ca passe sans probleme, alors montre nous un bout de ton code generant l'erreur !

Sinon, ton erreur provient d'ailleurs !!



a+

Anli.
3
morpheus262 Messages postés 461 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 16 février 2012
4 mai 2005 à 10:49
Ben oui mais tu peux inserer directement tes valeurs dans la abse sans faire le texte, et si il y a rien dans tes champs il y aura rien dans ta base.

<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
0
cs_sema Messages postés 110 Date d'inscription mardi 22 mars 2005 Statut Membre Dernière intervention 16 juin 2005
4 mai 2005 à 10:56
quand je mets rien dans le champs,

$texte = $_POST ["texte"] ;


alors il me met:

Warning: odbc_do(): SQL error: [Microsoft][Pilote ODBC Microsoft Access] Le champ 'breve.texte' ne peut pas être une chaîne vide., SQL state S1000 in SQLExecDirect in c:\program files\easyphp1...
0
morpheus262 Messages postés 461 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 16 février 2012
4 mai 2005 à 11:04
As tu es sous micorosft ok alors la desolé je conais pas bien le systeme de base de donnee en Mysql ca amrche mais pas en microsoft.


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
4 mai 2005 à 11:07
Hello,



quels sont les types de tes 2 champs dans ta base ?
0
cs_sema Messages postés 110 Date d'inscription mardi 22 mars 2005 Statut Membre Dernière intervention 16 juin 2005
4 mai 2005 à 11:10
dans ma base:
le format de lien c'est Lien hypertexte
le format de texte c'est texte
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
4 mai 2005 à 11:16
Ben il est entrain de te dire que ce champ texte ne peut pas contenir une chaine vide.

Maintenant, je ne connais pas non plus Access, difficile de t'aider plus.

Verifies si tu autorises une valeur NULL peut-etre.

Mais c'est bizarre...un espace est un caractere...donc cela devrair rentrer dans un champ texte.
0
morpheus262 Messages postés 461 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 16 février 2012
4 mai 2005 à 11:19
Oui mais c'est du micrsoft point important a ne pas negliger lol. ils ont une certaine logique pas forcement logique.

lol


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
0
cs_sema Messages postés 110 Date d'inscription mardi 22 mars 2005 Statut Membre Dernière intervention 16 juin 2005
4 mai 2005 à 11:39
dans ma base access, j'ai mis pour le champs texte:
Nul Interdit: Non

mais je pense que l'erreur vien du php et du texarea, enfin j'en sais rien,
et en ce qui conserne Microsoft access, je ne connais pas beaucoup non plus
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
4 mai 2005 à 15:18
Bah fais voir ton code avec le formulaire alors, et la recuperation du formulaire.
0
willowman Messages postés 143 Date d'inscription vendredi 5 juillet 2002 Statut Membre Dernière intervention 18 mars 2006 1
5 mai 2005 à 02:19
Salut !



Selon moi, l'erreur provient de ton driver ODBC ! Par experience, j'ai
appris a ne pas faire confiance au driver ODBC natif, fournis par
defaut dans Windows ! (mieux vaut prendre ceux des constructeurs et la
dernier release si possible !)



T'as pas de chance....c'est du microsoft pour toi



Apparement, dans ton cas, meme si au niveau de ta base access tu
effectues les declarations adequats (champs texte NON NULL), l'ODBC
doit schinter cela et retourner un code d'erreur au PHP ! (champs vide
= pas content....du coup, ca gueule !)



As-tu tester des conditions telles que :



if ( ! $texte ) {
$texte = $POST ["texte"] ;
}
else {
$texte = 'NULL' ;
}




Ou alors :

if ( $texte == "" ) {
$texte = $POST ["texte"] ;
}
else {
$texte = 'NULL' ;
}




A+



Anli
0
cs_sema Messages postés 110 Date d'inscription mardi 22 mars 2005 Statut Membre Dernière intervention 16 juin 2005
9 mai 2005 à 09:50
non, ça ne marche pas,
il me met encore:
Warning: odbc_do(): SQL error: [Microsoft][Pilote ODBC Microsoft Access] Le champ 'breve.texte1' ne peut pas être une chaîne vide., SQL state S1000 in SQLExecDirect in
0
cs_sema Messages postés 110 Date d'inscription mardi 22 mars 2005 Statut Membre Dernière intervention 16 juin 2005
10 mai 2005 à 09:52
oui, tu as raison, le probleme vient d'autre part
en tout cas, je vous remercie beaucoup
@+
0
Rejoignez-nous