ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
492
492
EMPFEHLEN
-
Hallo Leute!
Derzeit arbeite ich mal wieder an so einem ungeliebten kleinen Projekt damit meine CSS und PHP-Kenntnisse nicht ganz einschlafen.
Ein Jungunternehmer hat mich gebeten ihm eine Seite zu gestalten. Am besten erkläre ich zuerst die Struktur und zeige euch dann den threadrelevanten Code.
Es besteht eine index.php in der in der ersten Zeile via session_start(); eine primitive Session gestartet wird. Auf der gleichen Seite befindet sich code zum einbinden (include) von Inhalten. Sobald ein Link angeklickt wird, wird ein DIV erzeugt in dem der Content dargestellt wird - genauer gesagt ein großer grauer Kasten mit einem X oben rechts. binde ich nun in diesen DIV mein Kontaktformular mit Captcha ein, wird immer nur ein dummy image generiert. Meine Vermutung ist dass das scritpt keine session ID bekommt. Warum - um das zu beantworten bin ich noch nicht erfahren genug. Aber irgendwer von euch mit Sicherheit!
Hyperlink Struktur:
<a href="index.php?content=yes&page=formular">
Nun zum Code:
index.php (html ausgespart)
formular.phpPHP-Code:<?php session_start(); ?>
// haufenweise HTML code
<?php
if($_GET['content'] == 'yes')
{
echo "<div id=\"content\">";
echo "<div id=\"exitbutton\"><a href=\"index.php?content=no\">[x]</a></div>";
echo "<iframe src=\"content/".$_GET['page'].".php\" width=\"95%\" height=\"95%\" frameborder=\"0\">moep</iframe>";
echo "</div>";
}
?>
PHP-Code://html
<?php include("kontakt/kontakt.php"); ?>
//html
kontakt.php
fürs captcha noch mittendrin folgendes:PHP-Code:<?php
require('kontakt/config.inc.php');
require('kontakt/captcha.php');
$captcha = new captcha();
if(isset($_POST['form_submit']))
{
if($captcha->check_captcha($_SESSION['captcha_session'],$_POST['captcha_word'])!=TRUE) $errors[] = 'Fehlerhafte Codeeingabe';
if(empty($errors))
{
$action = 'passed';
}
else $action = 'main';
}
if(isset($_REQUEST['action'])) $action = $_REQUEST['action'];
if(empty($action)) $action = 'main';
?>
Code :1
<img class="captcha" src="kontakt/captcha_image.php<?php echo '?'.SID; ?>" alt="CAPTCHA" width="180" height="40"/>
Captcha_image.php
So die captcha.php ist einwandfrei und funktioniert unter anderen Bedingungen (Struktur der Seite)PHP-Code:<?php
require('captcha.php');
$captcha = new captcha();
if(isset($_SESSION['captcha_session']))
{
$captcha -> generate_image($_SESSION['captcha_session'],'kontakt/backgrounds/','kontakt/fonts/');
}
else
{
$captcha -> generate_dummy_image();
}
?>
Verzeichnisstruktur:
/index.php
/content/formular.php
content/kontakt/kontakt.php
content/kontakt/captcha_image.php
content/kontakt/captcha.php
content/kontakt/config.inc.php
Vielen Dank im Voraus!
-
So ich bin jetzt etwas weiter gekommen... setze ich ein session_start(); in die kontakt.php, funktioniert das captcha (zumindest das generieren)... das problem ist nur dass ja der header schon gesendet wurde... *würg*....
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\xampp\htdocs\alt\content\formular.php:8) in D:\xampp\htdocs\alt\kontakt\kontakt.php on line 2
-
Dieser Fehler wurde hier im Forum schon sehr oft besprochen und auch bei Google gibt es mehr als 360.000 Einträge zu diesem Fehler:
http://www.google.de/search?source=i...s+already+sent
unter anderem eine Seite die ich jedem Neuling empfehle: http://www.php-fehlermeldungen.de/to...u1/index0.htmlGebe keine Hilfe per PN, Mail, Instant Messenger etc.
und keine Copy&Paste-Lösungen - ein bisschen selbst nachdenken sollte drin sein. Konstruktivismus 4tw!
MfG, Zod
__________________
rpd Framework: Rapid Web-Engineering in PHP (Manual | Google Code)
-
ich weiß was der fehler bedeutet - nur nicht wie ich bei meiner seitenstruktur darauf reagiere bzw. wie es es nun ohne diesen fehler ABSICHTLICH zu produzieren das captcha zum laufen kriege.
So die lösung war dass ich von der index seite includiert habe... und dann hat die includierte seite wieder eine includiert... ZACK und schon ist im dritten script die session nicht mehr gültig
forumlar.php habe ich einfach entfernt und fertig.
hilfe zur selbsthilfe...
naja...
Ähnliche Themen
-
Formular mit Javascript php captcha einbinden
Von zyclop im Forum PHPAntworten: 37Letzter Beitrag: 13.01.10, 13:09 -
Captcha Session Problem
Von Lenox im Forum PHPAntworten: 8Letzter Beitrag: 18.06.09, 21:04 -
Captcha in Formular include
Von smyle im Forum PHPAntworten: 2Letzter Beitrag: 10.02.09, 10:11 -
Captcha in html-Formular einfügen
Von MagZero im Forum PHPAntworten: 6Letzter Beitrag: 17.12.07, 13:52 -
Session und Zufallsbild (Captcha)
Von Microhome im Forum PHPAntworten: 3Letzter Beitrag: 23.02.06, 00:18





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren