PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 30-04-2010 21:25:53

cecileflora
Membre
Inscription : 31-05-2009
Messages : 77

erreur php

bonsoir,je suis en train d'installer un system captcha sur mon site de petites annonces pour éviter le spam quand on passe l'annonce.
or j'ai un erreur et en regardant  les codes que j'ai modifié sur deux page je n'ai pas l'affichage du captcha voici les deux codes si quelqu'un voie un erreur merci de votre aide.

                   <?php
                    si
                    ((JPluginHelper::IsEnabled(«Système», «Tincaptcha '))&&(Mon $->id == "0") )
                    {
                    écho "<label For=\"captcha\">"
                    . JText::_( «TIN_CAPTCHA ' )
                    . "</ Label> <input type = \" text "name = \" captcha \ "id = \" captcha \ "size = \" 10 \ "class = \" inputbox requis \ "value = \" \ "/ > "
                    . "<img Src=\"index.php?option=com_tincaptcha&task=captcha_display\" />";
                    }
                    ?>
               
ici le deuxième:
   
$ user = & JFactory:: getUser ();
if (JPluginHelper:: IsEnabled («système», «tincaptcha ') & & $ user-> get (' guest '))
(
      captchk $ = plgSystemTincaptcha:: check (JRequest:: getVar ("captcha",'', 'post'));
      if (($ captchk! == )&&($ vrai id my-> == "0"))
      (
         JError:: raiseWarning (0, $ captchk);
         return false;
      )
)

merci
cordialement:)

Hors ligne

#2 30-04-2010 21:44:55

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

Je vois des simples quotes à la place de doubles quotes.
Je vois des é au lieu de e.
Pourrais-tu nous copier/coller le code plutôt qu'une retranscription ? Et entre balise [ code=php] afin d'améliorer la lecture.

Hors ligne

#3 01-05-2010 12:29:33

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

Tu vas surtout faire fuir tout le monde à balancer des centaines de lignes de codes que tu n'as pas mis sous balises [ code=php]...
Ce que je te demandais c'est juste le premier code que tu as mis mais avec un véritable copier/coller et non une réécriture mal faite.

Hors ligne

#4 01-05-2010 12:33:09

ManicoW
Cowrespondant
Lieu : Tours
Inscription : 08-05-2009
Messages : 192
Site Web

Re : erreur php

2500 lignes de code, ouaw smile


la v2, c'est tabou, on en viendra tous a bout

Hors ligne

#5 01-05-2010 13:36:47

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

Je ne peux guère te dire plus qu'avant... C'est bourré d'erreur le code que tu nous mets, ça ne respecte aucune norme PHP.

On retoruve des "captchk$" au lieu de $captchk", des " au lieu de ' et des espaces n'importe où.
On ne pourra t'aider sans avoir un code clair et surtout original... Tu n'as vraiment aucun moyen de faire un simple copier/coller du code plutôt que de nous le réécrire à la main ? Car visiblement tu ne sais pas recopier ce que tu vois. hmm

Hors ligne

#6 01-05-2010 14:06:31

cecileflora
Membre
Inscription : 31-05-2009
Messages : 77

Re : erreur php

ici c'est bien le code original,je sais c'est bourré d'erreurs et ici je n'ai rien modifié:

I’m writting the tut which helps you enable the captch verification whenever guest users post their new ads.
1) Download TinCaptcha plugin and component here: [url]http://joomlacode.org/gf/project/tincaptcha/frs/[/url]
2) Install them
3) Enable System – TinCaptcha Plugin
4) Open your adsmanager.php and search the line:
Code:

  // store it in the db

5) add before:

 
  $user =& JFactory::getUser();
  if (JPluginHelper::isEnabled('system', 'tincaptcha') && $user->get('guest'))
  {
      $captchk = plgSystemTincaptcha::check(JRequest::getVar('captcha', '', 'post'));
      if (($captchk !== true)&&($my->id == "0"))
      {
         JError::raiseWarning(0, $captchk);
         return false;
      }
    }
 

6) open your adsmanager.html.php file, search the line
Code:

        <input type="submit" value="<?php echo ADSMANAGER_FORM_SUBMIT_TEXT; ?>" />

add before
Code:

     
           <?php
          if
          ((JPluginHelper::isEnabled('system', 'tincaptcha'))&&($my->id == "0") )
          {
          echo " <label for=\"captcha\">  "
          . JText::_( 'TIN_CAPTCHA' )
          . "</label> <input type=\"text\" name=\"captcha\" id=\"captcha\" size=\"10\" class=\"inputbox required\" value=\"\" />"
          . "<img src=\"index.php?option=com_tincaptcha&task=captcha_display\" />";
          }
          ?>
 

               

done!
Notice: this captcha only is enabled when guest post a new ads. When they have logged in, the captcha is not effective!

Hors ligne

#7 01-05-2010 16:01:11

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

Tu utilises bien ce code sur une plateforme joomla ?
Le plugin est-il activé via l'administration ?

Enfin utilises-tu ce script sur le système qui est prévu par le tutorial ou bien sur un autre. Car il n'a pas l'air d'être prévu pour autre chose que le système pour lequel il a été programmé.

Hors ligne

#8 01-05-2010 17:52:11

cecileflora
Membre
Inscription : 31-05-2009
Messages : 77

Re : erreur php

oui bien sur tout est ok,joomla,adsmanager,je connais joomla très bien,ainsi que adsmanager depuis trois ans,j'ai trois sites animés par joomla et adsmanager.
mon seul problème est que la petite annonce est publiée sans taper le code captcha!!!or je pense que sa viens du code voir erreur sur le code,mais moi je ne voie pas cette erreur!!
merci pour ton aide
cordialement

Hors ligne

#9 01-05-2010 20:04:51

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

Testes-tu en étant non enregistré ? (on sait jamais)
Sinon je vois pas vraiment, car si le captcha est envoyé il est analysé et s'il ne correspond pas on renvoie false (je suppose donc que le post est à l'intérieur d'une fonction).

Hors ligne

#10 01-05-2010 20:47:15

cecileflora
Membre
Inscription : 31-05-2009
Messages : 77

Re : erreur php

merci bonne soirée,je vais tester,mais je ne comprends pas vraiment!!
cordialement

Hors ligne

#11 02-05-2010 08:52:05

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

Bah le script est fait pour être utilisé par les invités et non les membres, c'est cité dans le tutorial que tu nous as copié/collé.
Donc si ton interrogation vient du fait que les membres ne voient pas le captcha c'est tout à fait normal. Le script est fait comme cela.

Hors ligne

#12 02-05-2010 10:29:38

cecileflora
Membre
Inscription : 31-05-2009
Messages : 77

Re : erreur php

bonjour,merci pour ta réponse!
non le problème ne viens pas de la!
quand on écris une annonce,elle  est publiée même si on ne tape pas le code captcha!pourtant présent en bas du formulaire et la il y a problème car tincaptcha dans ce cas ne serve a rien!
voila et je pense que le script comporte un erreur,mais je tourne en rond!!
merci
cordialement:/

Hors ligne

#13 02-05-2010 11:15:32

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

Bah il faudrait donc regarder ce que renvoie chaque fonction de vérification afin de cibler la fonction qui ne fonctionne pas.

Hors ligne

#14 02-05-2010 11:58:55

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : erreur php

Bonjour,

As-tu bien suivi les instructions en anglais? Parceque si tu n'as rien modifié comme tu le dis, c'est normal.
Donc vérifie bien que ton code apparaisse dans ton fichier dans cet ordre là:

fichier adsmanager.php
....
 $user =& JFactory::getUser();
  if (JPluginHelper::isEnabled('system', 'tincaptcha') && $user->get('guest'))
  {
      $captchk = plgSystemTincaptcha::check(JRequest::getVar('captcha', '', 'post'));
      if (($captchk !== true)&&($my->id == "0"))
      {
         JError::raiseWarning(0, $captchk);
         return false;
      }
    }
// store it in the db
....
....
 <?php
          if
          ((JPluginHelper::isEnabled('system', 'tincaptcha'))&&($my->id == "0") )
          {
          echo " <label for=\"captcha\">  "
          . JText::_( 'TIN_CAPTCHA' )
          . "</label> <input type=\"text\" name=\"captcha\" id=\"captcha\" size=\"10\" class=\"inputbox required\" value=\"\" />"
         . "<img src=\"index.php?option=com_tincaptcha&task=captcha_display\" />";
          }
          ?>
<input type="submit" value="<?php echo ADSMANAGER_FORM_SUBMIT_TEXT; ?>" />
...
 

Parceque normalement ca doit marcher^^

Bonne continuation.


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#15 02-05-2010 14:24:03

cecileflora
Membre
Inscription : 31-05-2009
Messages : 77

Re : erreur php

oui tout est ok,mais hélas quand je passe une annonce,cette annonce est publiée même si je ne tape pas le code captcha!!!donc il y a un problème dans le code! mais ou?
cordialement:/

Hors ligne

#16 02-05-2010 15:29:34

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

xTG a écrit :

Bah il faudrait donc regarder ce que renvoie chaque fonction de vérification afin de cibler la fonction qui ne fonctionne pas.

Le code ne présente pas d'erreur visible donc tu ne peux que faire des tests des retours des fonctions.

Hors ligne

#17 04-05-2010 08:23:57

cecileflora
Membre
Inscription : 31-05-2009
Messages : 77

Re : erreur php

bonjour,
comment faire des test retours des fonctions?
je ne suis pas expert en php.
merci de ton aide
cordialement

Hors ligne

#18 04-05-2010 11:34:41

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : erreur php

echo JPluginHelper::isEnabled('system', 'tincaptcha');

Par exemple...

Hors ligne

#19 05-05-2010 11:22:43

cecileflora
Membre
Inscription : 31-05-2009
Messages : 77

Re : erreur php

bonjour j'ai trouvé un complément de fichier pour tincaptcha: fr.FR_com_tincaptcha.ini  mais personne dit comment faut l'installer et ou il faut le mettre.
pour le code en exemple j'imagine que il faut mettre le reste du code en commentaire et laisser seulement la ligne en question activée?

Dernière modification par cecileflora (05-05-2010 11:24:20)

Hors ligne

Pied de page des forums