Autor Zpráva
mochitto
Profil *
Dobrý den,
Chtěl bych smazat soubor po vygenorování
<?php
function generuj () {
$moznosti= array("2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h", "j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z");
$mista="6";
$captha="";
for ($i=0 ;$i<=$mista-1 ;$i++) {
$nahoda=rand(0, count($moznosti)-1);
$captha.=$moznosti[$nahoda];
}
return $captha;
}

function spocti_barvu($kod) {
$kod = strtolower($kod);
$hex = Array("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f") ;
$barvy = Array("red","green","blue");
for($i = 0; $i < 3; $i++) {
$cast = substr($kod, $i * 2, 2);
$a = array_search(substr($cast,0,1), $hex);
$b = array_search(substr($cast,1,2), $hex);
$rgb[$barvy[$i]] = $b + $a * 16;
}
return $rgb;
}

function nastav_barvu($prvek,$obrazek) {
$cast = imagecolorallocate($obrazek,$prvek['red'],$prvek['green'],$prvek['blue ']);
return $cast;
}

$sirka = "120";
$vyska = "23";

$obrazek = imagecreatetruecolor($sirka,$vyska);
$text1 = spocti_barvu("00000");
$text1 = nastav_barvu($text1,$obrazek);
imagesetthickness($obrazek, 1);
$logo=ImageCreateFromPNG("./captha/pozadi.png");
ImageCopyResized($obrazek, $logo, 0, 0, 0, 0, (120), (23), 120, 23);
$sifra = generuj();
imagettftext($obrazek, 10, 0, 34, 16, $text1, "./captha/font.ttf", "$sifra");
$sifra_1 = md5($sifra);
$sifra_2 = "$sifra_1.png";
imagepng($obrazek,"./captha/img/$sifra_1.png");
imagedestroy($obrazek);
$_SESSION['captha_2'] = $sifra_1;
echo "<table>\n";
echo " <tr>\n";
echo " <td><b><label for=\"captha\">Opište text**:</b></td>\n";
echo " <td><img src=\"./captha/img/$sifra_1.png\" alt=\"Opište kód na obrázku\"></td>\n";
echo " </tr>\n";
echo " <tr>\n";
echo " <td><INPUT TYPE=\"TEXT\" NAME=\"captha\" VALUE=\"\"></td>\n";
echo " <td><input type=\"submit\" value=\"Odeslat zprávu\"></td>\n";
echo " </tr>\n";
echo "</table>\n";
$vlozit = mysql_query("INSERT INTO captha (name) VALUES ('$sifra_2')") or die (mysql_error()); //je proto že se ulozi nazvy obrazku a pak smazu prez ftp pripojeni ale nebavy me to mazat


/*--§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§--Mazání CAPTCHA obrázků */
$handle=@opendir("./captha/img/");
$pocet_souboru_v_dir=0;
while ($file = @readdir($handle)) {
if ($file != "." && $file != ".."){$pocet_souboru_v_dir++;} }
if($pocet_souboru_v_dir >= "10"){
$i = 0;
while($i != $pocet_souboru_v_dir){
while ($file = @readdir($handle)) {
if ($file != "." && $file != "..") {
@unlink($file);
$i++;}
} }
}
@closedir($handle);
?>
Alphard
Profil
no, takže tady je nádherný kód, žádný dotaz ani podrobné informace, napiš, čeho chceš dosáhnout a jestli máš PHP ve verzi 5 (asi se bude hodit scandir())
LamiCZ
Profil *
Tohle cely uloz do samostatneho souboru a pres header('Content-type: image/png') nastav typ obsahu (PNG obrazek). Pak ve fci imagepng nezadavej druhy parametr cesty na disk, ale nech ho vygenerovat do pameti. V tom formu se pak odkaz na ten soubor napr. takhle:
<img src="captcha.php" alt="captcha">

Mno, a nepotrebujes zadnou DB, neni duvod ty obr ukladat a ani mazat... ;) Hlavne ten script pak muzes pouzit libovolne kde potrebujes.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: