Co na to rici? Opet mi to funguje...
<html>
<head>
<meta charset="UTF-8">
<!--script src="jquery-1.11.0.js"></script-->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<title></title>
</head>
<body>
<div id="prvni">uloz prvni</div>
<div id="druhy">uloz druhy</div>
<div id="treti">uloz treti</div>
<br>
<p id="vystup"></p>
<script>
$("div").click(function(event)
{
var f,d;
f = "jq-out.php";
d = {jmeno: event.target.id};
$.post(f, d, function(data)
{
$("#vystup").html(data);
});
});
</script>
</body>
</html>
<?php
$value = $_POST['jmeno'];
$name = 'Pepa';
$size = filesize($name);
$fp = fopen($name,'r');
$data = fread($fp,$size);
fclose($fp);
$data .= $value;
$fp = fopen($name,'w');
fwrite($fp,$data);
fclose($fp);
echo $data;
?>
On by tag script mel byt bud v body nebo head. Ale ten minuly kod, co jsem poslal, ve FF fungoval, tak jsem si toho nevsiml. Je mozne, ze to nektery prohlizec neuznava, kdyz porusis pravidla.
Muzes, sim te, prestat michat data primo do programu? Jako treba $_POST primo do sql dotazu bez osetreni na chyby. Hackeri to maji radi. Zkus tam dat do te promenne "' OR ''='" :) Vznikne pak dotaz
SELECT * FROM tabulka WHERE nazev='' OR ''=''; -- coz je totez jako
SELECT * FROM tabulka WHERE ''=''; -- coz je totez jako
SELECT * FROM tabulka;
A pokud nemas sifrovana hesla, tak hacker prave ziskal kompletni tabulku hesel uzivatelu. Pokud tedy nasledny script zobrazi vsechny sloupce...
A ses si jisty, ze ten php kod je dobre? zkousel jsi misto $_POST tam napsat treba Pepa a spusteni toho kodu fungovalo? Ja jen, ze tam mas treba $result, ale z resultu se ziskavaji data dalsim kodem, ktery tam nemas uvedeny. Take tam nemas zadne echo.
--- tomino.php ---
<?php
$servername = 'localhost';
$username = 'root';
$password = '';
$db = 'databaze';
$conn = new mysqli($servername, $username, $password, $db);
if ($conn->connect_error){
die ("connection failed:" . $conn->connect_error);
}
//$jmeno = $_POST['jmeno'];
$jmeno = 'Pepa';
$sql = "SELECT * FROM tabulka Where nazev='$jmeno'";
$result = $conn->query($sql);
// tady schazi dalsi php kod a echo pro vyzkouseni vystupu
$conn->close();
?>
Az tam ten kod dopises a echo nejake hodnoty nebo print_r pro cele pole, tak si to spust
h ttp://localhost/x/jquery/jq-out.php
A pokud to vypise spravne, tak tak tam vratis post a echo zakomentujes.