SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 10.06.2007, 01:14:01
einsteigi einsteigi ist offline
Anfänger
 
Registriert seit: Jan 2006
Beiträge: 124
Captcha neuladen

Hallo,
will das Captcha von http://selfphp.de/kochbuch/kochbuch.php?code=22 verwenden. Leider ist es aufgund des Farbverlaufs jedoch manchmal nicht möglich, die richtige BuchstabenZahlen-Folge eingegeben zu können. Deshalb möchte ich innerhalb der Skriptes über einen Link es ermöglichen, ein neues Captcha erzeugen zu können.
Hat jemand schon sowas programmiert, dann wäre ich über den Code dankbar. Wenn nicht, wie ist das zu programmieren? Es soll nur ein neues Bild geladen werden, keine neue Seite.

Das Skript erzeugt ja ein neues Captcha, wenn die Eingabe richtig ist wird der Dateiname zu dem Captchabild genommen und in captchadir die betreffende Datei gelöst. Nur was ist wenn der User einfach den Browser schließt, sprich er öffnet der Formular und dann geht er offline.

Cronjobs habe ich nicht zur Verfügung. Wie lösche ich Captcha die nicht eingeben wurden, habe gestern, captcha_demo.php ausprobiert, also Captchas eingegeben und heute hab ich in captchadir nachgesehen und musste feststellen, das sehr viele Bilder dort waren, habe diese dann gelöscht. Doch ich will bestimmt nicht wöchentlich einmal die Dateien in cptchadir löschen, wie erledigt das php für mich?
__________________
Es grüßt euch

Einsteigi
Mit Zitat antworten
  #2  
Alt 10.06.2007, 12:28:51
MatMel MatMel ist offline
Member
 
Registriert seit: Aug 2005
Beiträge: 644
MatMel eine Nachricht über ICQ schicken
AW: Captcha neuladen

Zitat:
[...] Es soll nur ein neues Bild geladen werden, keine neue Seite.
Das wird nur mit php ohne weiteres nicht möglich sein. Denn php läuft ja nur auf dem Server und wenn du keine Seite neulädst kriegt der reichlich wenig davon mit was der User macht.

Was ich mir vorstellen könnte wäre, dass du das captcha in einen iframe reinmachst und dann nur den iframe neu lädst. Probleme dabei sind einmal, dass iframes ziemlich uncool sind und außerdem wird das prüfen, ob der User das captcha richtig eingegeben hat etwas schwerer, da ja das captcha und die Überprüfung auf zwei verschiedenen Seiten liegen.

Als andere Lösung könntest du Ajax benutzen. Da wird dann per javascript ein neuer Request an den Server gesandt, sodass man nicht neu laden muss. Kenn ich mich leider gar nicht mit aus ;)

Das mit dem Löschen würde ich direkt nach einer positiven Überprüfung der Usereingabe machen, denn dann brauchst du ja das Bild nicht mehr.
Allerdings kenne ich das Script leider nicht und weiß nicht genau wie man das in dem Fall jetzt einbauen muss.

Nachtrag: Ich hab mir das Script kurz angeschaut. Wie es aussieht löscht das Script automatisch bei jeden Checken alle Bilder, die älter als zehn Minuten sind. Du hattest es also wahrscheinlich einfach ziemlich oft ausprobiert innerhalb der zehn Minuten, was dann dazu geführt hat, dass der Ordner ziemlich voll war...

Geändert von MatMel (10.06.2007 um 12:33:43 Uhr)
Mit Zitat antworten
  #3  
Alt 23.06.2007, 10:31:36
armybean armybean ist offline
Anfänger
 
Registriert seit: Jun 2007
Alter: 35
Beiträge: 20
armybean eine Nachricht über ICQ schicken
AW: Captcha neuladen

Mich würde das auch interessieren, da wie "einsteigi" schon sagte, die Zeichen-Kombination manchmal schlecht zu lesen ist. Ich will aber nicht die komplette Seite neu laden. Mit Javascript würde es gehen, bloß kann ich damit ja keine MD5-Hash erstellen, da Javascript keine MD5-Funktion kennt, oder?
__________________
Neuer Name, neues Design, überarbeiteter Inhalt: http://www.armybean.de
Mit Zitat antworten
  #4  
Alt 09.09.2007, 13:40:07
deedee deedee ist offline
Anfänger
 
Registriert seit: Sep 2007
Beiträge: 44
AW: Captcha neuladen

@armybean - javascript kan auch md5 - http://pajhome.org.uk/crypt/md5/index.html

Arbeite selbst lieber mit session basierte captcha's die keine images files schreiben auf das server systeem - auch ein refresh is mit javascript so einfacher da die session captcha beim image refresh auch geandert wird
Mit Zitat antworten
  #5  
Alt 09.09.2007, 13:53:00
sysop sysop ist offline
Member
 
Registriert seit: Mar 2004
Ort: wien
Beiträge: 512
AW: Captcha neuladen

mit unlink().
vor dem aufruf des captchas kannst du das ganze directory nach files durchsuchen, löschen und dann dein enues bild erstellen.

und warum stellst du keine anderen farbwerte für den farbverlauf ein ?
Mit Zitat antworten
  #6  
Alt 09.09.2007, 15:19:29
armybean armybean ist offline
Anfänger
 
Registriert seit: Jun 2007
Alter: 35
Beiträge: 20
armybean eine Nachricht über ICQ schicken
AW: Captcha neuladen

Vielen Dank für die Infos. Kann einer von euch vielleicht mal den Code für so einen Reload erstellen und posten?
__________________
Neuer Name, neues Design, überarbeiteter Inhalt: http://www.armybean.de
Mit Zitat antworten
  #7  
Alt 09.09.2007, 18:53:26
deedee deedee ist offline
Anfänger
 
Registriert seit: Sep 2007
Beiträge: 44
AW: Captcha neuladen

Kanst es mal so versuchen, macht aber noch keines neues hash ins formular, when du das wilst kanst du mit dem javascript md5 mit date und time ein neues hash generieren in dein form und fur die GET werte fur das bild bei dem refresh durch javascript

<script language="javascript" type="text/javascript"><!--
function captchaNew() {
if (document.images['captchaimg']) {
document.images['captchaimg'].src = "captcha.php?codeCaptcha=" + document.forms['CaptchaForm'].codeCaptcha.value;
}
}
//--></script>
<form name="CaptchaForm" method="post" action="">
<!-- Captcha Begin -->
<?php $codeCaptcha = md5(microtime()); ?>
<a href="javascript:captchaNew();void(0);"><img src="captcha.php?codeCaptcha=<?php echo $codeCaptcha; ?>" name="captchaimg" border="0"></a>
<br>
<input type="hidden" name="codeCaptcha" value="<?php echo $codeCaptcha; ?>">
<input type="text" name="stringCaptcha">
<!-- Captcha End -->
<p><input type="submit" name="Submit" value="Wert prüfen"></p>
</form>

Edit: mit md5

<script language="javascript" type="text/javascript"><!--
function captchaNew() {
var d = new Date();
str = d.getTime();
// Mit dem md5.js from http://pajhome.org.uk/crypt/md5/md5src.html
hash = hex_md5("'" + str + "'");
document.forms['CaptchaForm'].codeCaptcha.value = hash;
if (document.images['captchaimg']) {
document.images['captchaimg'].src = "captcha.php?codeCaptcha=" + hash;
}
}
//--></script>

Geändert von deedee (09.09.2007 um 19:45:17 Uhr)
Mit Zitat antworten
  #8  
Alt 09.09.2007, 21:46:51
armybean armybean ist offline
Anfänger
 
Registriert seit: Jun 2007
Alter: 35
Beiträge: 20
armybean eine Nachricht über ICQ schicken
AW: Captcha neuladen

danke schon mal. werde es in den nächsten tagen mal testen
__________________
Neuer Name, neues Design, überarbeiteter Inhalt: http://www.armybean.de
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Kontaktformular mit Zahlen Captcha Alex99 PHP Grundlagen 5 15.03.2007 08:13:21
Ist ein externes Captcha sicher? stefan-tt PHP Grundlagen 2 28.02.2007 17:12:24
Captcha und Schrift einsteigi PHP Grundlagen 6 12.12.2006 18:44:05
CAPTCHA & MySQL kapa30 PHP für Fortgeschrittene und Experten 6 26.08.2006 16:49:05
Captcha fehler im code d4um3n PHP Grundlagen 0 03.04.2006 14:44:15


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:57:18 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.


© 2001-2021 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt