tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
963
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von IcomY
    IcomY IcomY ist offline Mitglied
    Registriert seit
    Feb 2009
    Ort
    Bielefeld
    Beiträge
    13
    eventuell könnt ihr mir bei so einem ähnlichen Problem wie hier schon beschrieben helfen es geht auch um das captcha script welches ich in einen linkroboter einfügen wollte, das Script ist folgendes,

    PHP-Code:
    <?php
    // phpwww.de Linkroboter Version 2.0
    // Copyright: Helmut Ambach, 2002
    // [url]http://www.phpwww.de[/url]
    // Verbesserungsvorschläge bitte an:
    // [email]info@phpwww.de[/email]
    // Danke!!
    // Open Source Code

    $DATEINAME "links"
    // Dateinamen festlegen (ohne Extension!)
    // zur Eröffnung der Files:
    // $DATEINAME.html und $DATEINAME.txt
    // Durch Ändern der Variablen $DATEINAME sowie
    // des Namens dieser Datei können Sie 
    // auf sehr einfache Weise weitere Linklisten herstellen.

    // *** Die eigentliche Linkroboterfunktion ***
    function robot($dateiname) {
        global 
    $URL$TITEL$BESCHREIBUNG$SENT$fehler;  // Globale Variablen deklarieren
        // Die Variablen des HTML Formulars gelten auch in der Roboter-Funktion.

        
    $URL strip_tags(trim($URL));
        
    $TITEL strip_tags(stripslashes(trim($TITEL)));
        
    $BESCHREIBUNG strip_tags(stripslashes(trim($BESCHREIBUNG)));

        if(!
    $dateiname){$dateiname "liste";}
        else {
    $dateiname trim($dateiname);}
        
    $pfad $dateiname.".html";         // HTML-Liste, durch Löschen des Files DATEINAME.html 
                                    // können Sie die Linkliste in den Ausgangszustand zurücksetzen.
        
    $urlpfad $dateiname.".txt";        // Kontroll-Liste, Liste der bereits eingegebenen URLs.

        
    if(!file_exists($pfad)){touch($pfad); $fp=fopen($urlpfad,"w+"); fclose($fp);}
        if(!
    file_exists($urlpfad)){touch($urlpfad);}

        
    $liste file($pfad);                 // Liest die HTML-Liste ein.
        
    $i 0;
        while (
    $liste[$i] != "") {$liste[$i] = trim($liste[$i]); $i++;}

        
    $urlliste file($urlpfad);            // Liest die Kontroll-Liste ein.
        
    $i 0;
        while (
    $urlliste[$i] != "") {$urlliste[$i] = trim($urlliste[$i]); $i++;}

        if (
    $SENT == 'SENT'){
          
    $sperre in_array($URL,$urlliste);
          if(
    strlen($TITEL) < 3) {$sperre 1$fehler "Titel zu kurz!";}
          if(!@
    fopen($URL,"r")) {$sperre 1$fehler "URL existiert nicht!";}
          if(
    strlen($URL) < 13) {$sperre 1$fehler "URL fehlerhaft!";}
          if(!
    ereg("^[url]http://([/url][a-zA-Z0-9-]{2,}\.){0,}[a-zA-Z0-9-]{3,}(\.[a-zA-Z]{2,4}){1,2}",$URL))
            {
    $sperre 1$fehler "URL fehlerhaft!";}
          
    // Prüft, ob diese URL bereits eingegeben wurde oder fehlerhafte Angaben
          // gemacht wurden.
          // Falls die eingegebene URL noch nicht in der Kontroll-Liste enthalten ist,
          // wird der neue Link an erster Stelle eingefügt:

          
    if (!$sperre)    {
            
    $neuezeile "<a href='$URL'><b>$TITEL</b></a><br>$BESCHREIBUNG";
            
    array_unshift($liste,$neuezeile); 
            
    $schreiben fopen($pfad,"w+");
            foreach (
    $liste as $zeile) {
                
    fputs($schreiben,$zeile."\n");
            }
            
    fclose($schreiben);
            
    $schreiben fopen($urlpfad,"a");
            
    fputs($schreiben,$URL."\n");
            
    fclose($schreiben);
          }
          else if(empty(
    $fehler))$fehler "URL schon vorhanden oder gesperrt!";
        }
        return 
    $liste;

    }     
    // ENDE der Funktion robot($DATEINAME)

    $liste robot($DATEINAME);
    ?>
    <html>
    <head>
        <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">

        <style>
        <!--
        p   {font-family:Arial,Helvetica; text-align: left; margin-top:6pt; margin-bottom: 0pt; color: #00007f}
        li  {font-family:Arial,Helvetica; font-size:12pt; line-height:15pt; text-align: left; margin-top:6pt; margin-bottom: 0pt; color: #00007f}

        A:link {COLOR: blue; TEXT-DECORATION: none}
        A:visited {COLOR: blue; TEXT-DECORATION: none}
        A:active {COLOR: orange; TEXT-DECORATION: none}
        A:hover {COLOR: red; TEXT-DECORATION: none}
        //-->    
        </style>

        <title>Linkroboter</title>
        <base target="_new">
        </head>

    <body bgcolor=#CAD8FD>
            <p><font size="4">Link-Roboter:</font>
            <p>Hier k&ouml;nnen Sie interessante Links eintragen:</p>
            <p style='color:red;'><?php echo $fehler?>
    <table>
    <FORM name="Formular" action='<?php echo $PHP_SELF?>' target="_top" method="post">
        <TR>
            <TD width=30%><p>Titel der Seite:*</TD>
            <TD width=70%><INPUT maxLength="80" name="TITEL" size="48" value="<?php if(!empty($fehler)) echo $TITEL?>"></TD>
        </TR>
        <TR>
            <TD><p>URL der Seite:*</TD>
            <TD><INPUT maxLength="1024" name="URL" size="48" value="<?php if(!empty($fehler)) echo $URL; else echo "http://"?>"></TD>
        </TR>
        <TR>
            <TD><p>Beschreibung:*</TD>
            <TD><INPUT maxLength="1024" name="BESCHREIBUNG" size="48" value="<?php if(!empty($fehler)) echo $BESCHREIBUNG?>"></TD>
        </TR>
        <TR>
            <TD>    <input type='hidden' name="SENT" value="SENT">
                    <input type='hidden' name="DATEINAME" value="<?php echo "$DATEINAME"?>">
            <TD><INPUT type='submit' value="Abschicken!" class="button">
        </TR>
    </form>
    </table>
            <p><font size="4">Aktuelle Links:</p>
            <ul>
    <?php foreach ($liste as $zeile) {echo "<li>$zeile\n";} ?>
            </ul>
    </body></html>
    und das Sicherheitscript liegt hier erklärt aber wie schon gesagt ich raff das nicht! http://peuss.com/PHP/Captcha/
    und das wollte ich auch sicher machen hatte es mal so das es eben mit Fehlermeldungen funktionierte aber das war's auch schon!
    Geändert von IcomY (21.02.09 um 16:38 Uhr)
     

  2. #2
    Avatar von saftmeister
    saftmeister saftmeister ist gerade online Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.521
    Evtl kann man helfen, wenn du mitteilst, was das Problem ist, bzw. wie es sich äußert. Was funktioniert und was nicht? Geb mal ein bisschen mehr Infos. Für eine Analyse des Quellcodes hat wohl keiner Lust, wenn er nicht weiß, was nicht funktioniert.
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  3. #3
    Avatar von IcomY
    IcomY IcomY ist offline Mitglied
    Registriert seit
    Feb 2009
    Ort
    Bielefeld
    Beiträge
    13
    Zitat Zitat von saftmeister Beitrag anzeigen
    Evtl kann man helfen, wenn du mitteilst, was das Problem ist, bzw. wie es sich äußert. Was funktioniert und was nicht? Geb mal ein bisschen mehr Infos. Für eine Analyse des Quellcodes hat wohl keiner Lust, wenn er nicht weiß, was nicht funktioniert.
    ich habe das script wieder durch das Original ersatz,

    ich habe das Problem mit der if Else

    zum Beispiel hier
    ---------
    wo mach ich das rein
    <!-- Code für CAPTCHA-Bild -->
    <?
    if(!@include "http://www.formular-generator.de/captcha/formular.php?captcha_code=$code&v=ks2") {
    ?>
    <p>Code: <?=$code?></p>
    <?
    }
    ?>
    <!-- Ende: Code für CAPTCHA-Bild -->
    -------------------------
    dann dass
    ------------
    <!-- Code für CAPTCHA-Eingabefeld -->
    <input type="text" name="captcha_code" size="4" />
    <!-- Ende: Code für CAPTCHA-Eingabefeld -->
    -------------------
    und das schwerste
    ----------------------
    <?
    /*
    Hier k�nnen Sie sehen, wie man die Variable $captchaValidierungOk abfragt.
    Die Variable hat entweder den Wert 'true', falls der Code korrekt
    eingegeben wurde, sonst 'false'.
    */
    if($captchaValidierungOk) {
    ?>
    <p>Der Sicherheitscode wurde korrekt eingegeben.</p>
    <?
    } else {
    ?>
    <p>Der Sicherheitscode wurde nicht korrekt eingegeben.</p>
    <?
    }
    ?>
    -------------------------
    ich werde nämlich zugespamt das es nicht mehr schön ist
    würde mich um jede Hilfe freuen!
     
    Erst wenn das Letzte Feld gerodet und der letzte Baum gefällt,werdet ihr einsehen müssen das Geld nicht zu essen ist! SeitenInfo

  4. #4
    Avatar von saftmeister
    saftmeister saftmeister ist gerade online Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.521
    Also, den include()-Befehl solltest du zu Beginn des Scripts einbauen, in dem der Code für das Captcha eingebunden werden soll. Also sprich, in das Formular, in dem das Element eingebaut werden soll (Login-, User-Add-, Passwort-Retrieval, oder wo auch immer du das haben willst).

    Wobei der erste Teil das Bild selbst zu sein scheint und der Teil mit dem <input type....> (zweiter Teil) kommt als eigentliches Formular-Element rein.

    Der dritte Teil kommt in das Script mit der Logik, die ausgeführt wird, wenn das Formular abgesendet wurde.

    Da du keine Angaben gemacht hast, wie deine Website aufgebaut ist, evtl. was du für ein CMS verwendest, kann ich dir keine präziseren Angaben machen.
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  5. #5
    Avatar von IcomY
    IcomY IcomY ist offline Mitglied
    Registriert seit
    Feb 2009
    Ort
    Bielefeld
    Beiträge
    13
    Zitat Zitat von saftmeister Beitrag anzeigen
    Also, den include()-Befehl solltest du zu Beginn des Scripts einbauen, in dem der Code für das Captcha eingebunden werden soll. Also sprich, in das Formular, in dem das Element eingebaut werden soll (Login-, User-Add-, Passwort-Retrieval, oder wo auch immer du das haben willst).

    Wobei der erste Teil das Bild selbst zu sein scheint und der Teil mit dem <input type....> (zweiter Teil) kommt als eigentliches Formular-Element rein.

    Der dritte Teil kommt in das Script mit der Logik, die ausgeführt wird, wenn das Formular abgesendet wurde.

    Da du keine Angaben gemacht hast, wie deine Website aufgebaut ist, evtl. was du für ein CMS verwendest, kann ich dir keine präziseren Angaben machen.
    das Script ist zu oberst gepostet, und das Link ist http://www.worldtown.de/linkliste/linkroboter.php
     
    Erst wenn das Letzte Feld gerodet und der letzte Baum gefällt,werdet ihr einsehen müssen das Geld nicht zu essen ist! SeitenInfo

  6. #6
    Avatar von saftmeister
    saftmeister saftmeister ist gerade online Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.521
    PHP-Code:
    <?php
    // phpwww.de Linkroboter Version 2.0
    // Copyright: Helmut Ambach, 2002
    // [url]http://www.phpwww.de[/url]
    // Verbesserungsvorschläge bitte an:
    // [email]info@phpwww.de[/email]
    // Danke!!
    // Open Source Code

    $DATEINAME "links"
    // Dateinamen festlegen (ohne Extension!)
    // zur Eröffnung der Files:
    // $DATEINAME.html und $DATEINAME.txt
    // Durch Ändern der Variablen $DATEINAME sowie
    // des Namens dieser Datei können Sie 
    // auf sehr einfache Weise weitere Linklisten herstellen.

    // *** Die eigentliche Linkroboterfunktion ***
    function robot($dateiname) {
        global 
    $URL$TITEL$BESCHREIBUNG$SENT$fehler;  // Globale Variablen deklarieren
        // Die Variablen des HTML Formulars gelten auch in der Roboter-Funktion.

        
    $URL strip_tags(trim($URL));
        
    $TITEL strip_tags(stripslashes(trim($TITEL)));
        
    $BESCHREIBUNG strip_tags(stripslashes(trim($BESCHREIBUNG)));

        if(!
    $dateiname){$dateiname "liste";}
        else {
    $dateiname trim($dateiname);}
        
    $pfad $dateiname.".html";         // HTML-Liste, durch Löschen des Files DATEINAME.html 
                                    // können Sie die Linkliste in den Ausgangszustand zurücksetzen.
        
    $urlpfad $dateiname.".txt";        // Kontroll-Liste, Liste der bereits eingegebenen URLs.

        
    if(!file_exists($pfad)){touch($pfad); $fp=fopen($urlpfad,"w+"); fclose($fp);}
        if(!
    file_exists($urlpfad)){touch($urlpfad);}

        
    $liste file($pfad);                 // Liest die HTML-Liste ein.
        
    $i 0;
        while (
    $liste[$i] != "") {$liste[$i] = trim($liste[$i]); $i++;}

        
    $urlliste file($urlpfad);            // Liest die Kontroll-Liste ein.
        
    $i 0;
        while (
    $urlliste[$i] != "") {$urlliste[$i] = trim($urlliste[$i]); $i++;}

        if (
    $SENT == 'SENT'){
          
    $sperre in_array($URL,$urlliste);
          if(
    strlen($TITEL) < 3) {$sperre 1$fehler "Titel zu kurz!";}
          if(!@
    fopen($URL,"r")) {$sperre 1$fehler "URL existiert nicht!";}
          if(
    strlen($URL) < 13) {$sperre 1$fehler "URL fehlerhaft!";}
          if(!
    ereg("^[url]http://([/url][a-zA-Z0-9-]{2,}\.){0,}[a-zA-Z0-9-]{3,}(\.[a-zA-Z]{2,4}){1,2}",$URL))
            {
    $sperre 1$fehler "URL fehlerhaft!";}
          
    /** Hier die Prüfung auf die korrekte Eingabe des Captcha-Codes. **/
          
    if(!$captchaValidierungOk) {
              
    $sperre 1;
              
    $fehler "Code falsch!";
          }

          
    // Prüft, ob diese URL bereits eingegeben wurde oder fehlerhafte Angaben
          // gemacht wurden.
          // Falls die eingegebene URL noch nicht in der Kontroll-Liste enthalten ist,
          // wird der neue Link an erster Stelle eingefügt:

          
    if (!$sperre)    {
            
    $neuezeile "<a href='$URL'><b>$TITEL</b></a><br>$BESCHREIBUNG";
            
    array_unshift($liste,$neuezeile); 
            
    $schreiben fopen($pfad,"w+");
            foreach (
    $liste as $zeile) {
                
    fputs($schreiben,$zeile."\n");
            }
            
    fclose($schreiben);
            
    $schreiben fopen($urlpfad,"a");
            
    fputs($schreiben,$URL."\n");
            
    fclose($schreiben);
          }
          else if(empty(
    $fehler))$fehler "URL schon vorhanden oder gesperrt!";
        }
        return 
    $liste;

    }     
    // ENDE der Funktion robot($DATEINAME)

    $liste robot($DATEINAME);
    ?>
    <html>
    <head>
        <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">

        <style>
        <!--
        p   {font-family:Arial,Helvetica; text-align: left; margin-top:6pt; margin-bottom: 0pt; color: #00007f}
        li  {font-family:Arial,Helvetica; font-size:12pt; line-height:15pt; text-align: left; margin-top:6pt; margin-bottom: 0pt; color: #00007f}

        A:link {COLOR: blue; TEXT-DECORATION: none}
        A:visited {COLOR: blue; TEXT-DECORATION: none}
        A:active {COLOR: orange; TEXT-DECORATION: none}
        A:hover {COLOR: red; TEXT-DECORATION: none}
        //-->    
        </style>

        <title>Linkroboter</title>
        <base target="_new">
        </head>

    <body bgcolor=#CAD8FD>
            <p><font size="4">Link-Roboter:</font>
            <p>Hier k&ouml;nnen Sie interessante Links eintragen:</p>
            <p style='color:red;'><?php echo $fehler?>
    <table>
    <FORM name="Formular" action='<?php echo $PHP_SELF?>' target="_top" method="post">
        <TR>
            <TD width=30%><p>Titel der Seite:*</TD>
            <TD width=70%><INPUT maxLength="80" name="TITEL" size="48" value="<?php if(!empty($fehler)) echo $TITEL?>"></TD>
        </TR>
        <TR>
            <TD><p>URL der Seite:*</TD>
            <TD><INPUT maxLength="1024" name="URL" size="48" value="<?php if(!empty($fehler)) echo $URL; else echo "http://"?>"></TD>
        </TR>
        <TR>
            <TD><p>Beschreibung:*</TD>
            <TD><INPUT maxLength="1024" name="BESCHREIBUNG" size="48" value="<?php if(!empty($fehler)) echo $BESCHREIBUNG?>"></TD>
        </TR>
        <tr>
            <td><!--    Code für CAPTCHA-Bild    -->
    <?
    if(!@include "http://www.formular-generator.de/captcha/formular.php?captcha_code=$code&v=ks2") {
    ?>
    <p>Code: <?=$code?></p>
    <?
    }
    ?>
    <!-- Ende: Code für CAPTCHA-Bild --></td>
                       <td><!-- Code für CAPTCHA-Eingabefeld -->
    <input type="text" name="captcha_code" size="4" />
    <!-- Ende: Code für CAPTCHA-Eingabefeld --></td>
        </tr>
        <TR>
            <TD>    <input type='hidden' name="SENT" value="SENT">
                    <input type='hidden' name="DATEINAME" value="<?php echo "$DATEINAME"?>">
            <TD><INPUT type='submit' value="Abschicken!" class="button">
        </TR>
    </form>
    </table>
            <p><font size="4">Aktuelle Links:</p>
            <ul>
    <?php foreach ($liste as $zeile) {echo "<li>$zeile\n";} ?>
            </ul>
    </body></html>
    Achja, vergessen: Den Code $code musst du natürlich vorher noch mit sinnvollen Werten füllen und in eine Session schreiben. Außerdem eine Validierungsfunktion, die $captchaValidierungOk entsprechend setzt.
    Geändert von saftmeister (22.02.09 um 11:00 Uhr)
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  7. #7
    Avatar von IcomY
    IcomY IcomY ist offline Mitglied
    Registriert seit
    Feb 2009
    Ort
    Bielefeld
    Beiträge
    13
    habs versucht aber geht irgendwie nicht ... aber kommen erst mal keine Fehlermeldungen und es lassen sich noch keine links eintragen, kannst es ja mal anschauen !
     
    Erst wenn das Letzte Feld gerodet und der letzte Baum gefällt,werdet ihr einsehen müssen das Geld nicht zu essen ist! SeitenInfo

  8. #8
    Avatar von IcomY
    IcomY IcomY ist offline Mitglied
    Registriert seit
    Feb 2009
    Ort
    Bielefeld
    Beiträge
    13
    Zitat Zitat von saftmeister Beitrag anzeigen
    [php]

    Achja, vergessen: Den Code $code musst du natürlich vorher noch mit sinnvollen Werten füllen und in eine Session schreiben. Außerdem eine Validierungsfunktion, die $captchaValidierungOk entsprechend setzt.
    habs versucht aber geht irgendwie nicht denke es liegt sperre

    da der ausschnitt

    if(!$captchaValidierungOk) {
    $sperre = 1;
    $fehler = "Code falsch!" ;
    } else { $sperre = 0; $fehler = "Code oK" ;
    }
     
    Erst wenn das Letzte Feld gerodet und der letzte Baum gefällt,werdet ihr einsehen müssen das Geld nicht zu essen ist! SeitenInfo

Ähnliche Themen

  1. existierendes PDF in sharppdf einfuegen
    Von hausmeister079 im Forum .NET Windows Forms
    Antworten: 0
    Letzter Beitrag: 01.12.09, 05:44
  2. Problem mit meinem Captcha-Script
    Von ts230 im Forum PHP
    Antworten: 3
    Letzter Beitrag: 21.12.08, 13:49
  3. Script funktioniert nicht im FF im IE & Opera schon
    Von MrFreeze im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 31.01.08, 13:32
  4. Captcha in html-Formular einfügen
    Von MagZero im Forum PHP
    Antworten: 6
    Letzter Beitrag: 17.12.07, 13:52
  5. Antworten: 0
    Letzter Beitrag: 15.11.06, 13:54

Stichworte