przechwytywanie formularza mindfuck

0

Powie mi ktos jakim cudem po kliknieciu submit isset($_POST['submit']) nie spelnia warunku w ifie ?
wszystko dzieje sie w tym samym pliku a oto kod:

 <?php
$mysqli = new mysqli('localhost','XXXX', "XXXX", "XXXX");
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
if (!$mysqli->set_charset("utf8")) {
    printf("Error loading character set utf8: %s\n", $mysqli->error);
}
if(isset($_POST['submit']))
{
        $data=date("D M j G:i:s T Y");
        //formularz jest wyslany
        if ($stmt = $mysqli->prepare("INSERT INTO  `timeseer`.`bug_report` (`id_buga` ,`tresc` ,`status` ,`data`)VALUES (NULL ,  ?, 'w trakcie realizacji',?);")) {
        /* bind parameters for markers */
        $stmt->bind_param("s",$_POST['blad']);
        $stmt->bind_param("s",$data);
        /* execute query */
        $stmt->execute();
        }
        $stmt->close();
        /* bind result variables */
        header('Location: errorlog.php');
}
else echo "dupa";
?>
<hr>
<center>
<font size=10 > ` Strona do zglaszanie buentow ` </span> <br><br><br>
<form action="errorlog.php" method="POST">
buont: <input type="text" name="blad" style="width:700px;"><input type = "submit" name = "submit" value = "Submit"/>
</form>
</span>
<hr>
<?php
if ($stmt = $mysqli->prepare("SELECT * FROM  `timeseer`.`bug_report`;")) {
       
        $stmt->execute();
        $result=$stmt->get_result();
        while($row = $result->fetch_array(MYSQLI_NUM))
        {
                echo $row[0]." | ".$row[1]." | ".$row[2]." | ".$row[3]."<br>";
        }
}
$stmt->close();
?>
<hr>

z gory dziekuje!

0

I to cały plik?
Bo tutaj działa jak trzeba, więc upewnij się czy:

  • Nie nadpisujesz gdzieś tablicy $_POST
  • Czy na stronie nie masz jakichś javascriptów

I porada dnia: NIGDY NIE UŻYWAJ NA STRONIE ELEMENTÓW O name="submit"! Postaraj się zapamiętać, ja za pierwszym razem szukałem pół godziny o co chodzi, jak się sypało, potem zapomniałem i kolejnym razem znowu szukałem ;) Jeżeli nie używasz javascriptu to nie ma to takiego znaczenia raczej (no chyba, że tylko jedna przeglądarka, na której testujesz nie lubi się z tym tak czy tak?)

1 użytkowników online, w tym zalogowanych: 0, gości: 1