edit: secret question

thuglife

Mitglied
<?php

// Fehlermeldungen bei Falscheingabe
if(isset($_POST['submit'])) {
if( $_POST['frage_a'] != "muradiye"){ $error['frage_a'] = 'soru ters cevaplandi!<br>';}

} if(!$error && $_POST['submit']) {

//Ausgabe wenn alles richtig eingegeben wurde.
echo("her sey dogru cevaplandi");
{
header ("Location: http://www.tural-news.com/turalnewstest/index.php");
exit;

}
else
{

// Fehler Ausgabe
echo $error['frage_a'];

// HTML abschnitt zum besseren bearbeiten
// Seite, die angezeigt wird, wenn noch keine Aktion durchgeführt wurde.
?>
<link href="tural-news/_stylesheet.css" rel="stylesheet" type="text/css" />

<form method="post" action="<?php print $_SERVER['PHP_SELF']; ?>">
<table width="325" border="0">
<tr>
<td width="167">Caglarin annesi kim? </td>
<td width="148"><input name="frage_a" type="text" id="frage_a" value="<?=$_POST['frage_a']?>" maxlength="40"></td>
</tr>

<tr>
<td colspan="2"><div align="center">
<input name="submit" type="submit" id="submit" value="cevapla" />
</div></td>
</tr>
<tr>
<td colspan="2"><div align="center">her harfi kücük yazmalisiniz</div></td>
</tr>
</table>
</form>

das ding soll bei korrekter antwort: muradiye, auf die mainHomepage springen. aber funkt nicht. gibt warning php...


siehe: http://www.tural-news.com/index.php
 
Hi,

zunächstmal muss header() vor jeder ausgabe stehen, also vor deinem
PHP:
echo("her sey dogru cevaplandi");

Außerdem passt hier was nicht:
PHP:
<?php
//Ausgabe wenn alles richtig eingegeben wurde.
echo("her sey dogru cevaplandi");
{
header ("Location: http://www.tural-news.com/turalnewstest/index.php");
exit;

}

Da fehlt vor der öffnenden geschweiften Klammer eine If-Anweisung, oder aber die geschweifte Klammer auf muss weg.

Lg
 
PHP:
<?php

// Fehlermeldungen bei Falscheingabe
if(isset($_POST['submit'])) {
        if( $_POST['frage_a'] != "muradiye"){  $error['frage_a'] = 'soru ters cevaplandi!<br>';}  
        
} if(!$error && $_POST['submit']) {

//Ausgabe wenn alles richtig eingegeben wurde.

   header ("Location: http://www.tural-news.com/turalnewstest/index.php");
   exit;

}
else
{

// Fehler Ausgabe
echo $error['frage_a'];

// HTML abschnitt zum besseren bearbeiten
// Seite, die angezeigt wird, wenn noch keine Aktion durchgeführt wurde.
?>
<link href="tural-news/_stylesheet.css" rel="stylesheet" type="text/css" />

<form method="post" action="<?php print $_SERVER['PHP_SELF']; ?>">
  <table width="325" border="0">
    <tr>
      <td width="167">Caglarin annesi kim? </td>
      <td width="148"><input name="frage_a" type="text" id="frage_a" value="<?=$_POST['frage_a']?>" maxlength="40"></td>
    </tr>
 
    <tr>
      <td colspan="2"><div align="center">
        <input name="submit" type="submit" id="submit" value="cevapla" />
      </div></td>
    </tr>
    <tr>
      <td colspan="2"><div align="center">her harfi kücük yazmalisiniz</div></td>
    </tr>
  </table>
</form>

so geht auch nicht :(
 
Zuletzt bearbeitet:
Moin,


so wie es den Anschein hat, versuchst du erst eine Erfolgsmeldung auszugeben und dann den Location-Header zu senden.
Beides zusammen geht nicht, macht auch keinen Sinn(wozu etwas ausgeben, wenn es eh nicht zu sehen sein wird, weil umgeleitet wird)

Das Problem...sobald eine Ausgabe erfolgt, werden die Header gesendet, danach können keine mehr gesendet werden.

Was du tun kannst:
Sende einen refresh-Header, der nach x Sekunden zur gewünschten Adresse weiterleitet und gebe danach die Meldung aus.
 
super ich versteh leider nicht viel von dem ganzen kram. ich verushc es durch die wenigen kenntnisse was zusammenzu basteln :( ich will bei richtiger Antwortangabe einen refresh der Seite auf einen anderne Link. :S
 
Zurück