Abych to upřesnil..
Mám tento script.
<?php
if (checkpreg()){
$filename = strtolower($_POST['identifikace']);
$randident1 = rand(1, 9);
$randident2 = rand(10, 99);
$randident3 = rand(10, 99);
$randident = $randident1.$randident2.$randident3;
$open = fopen('./include/'.$filename.'-'.$randident.$format.'', 'w');
chmod('./include/'.$filename.'-'.$randident.$format.'', 0777);
sleep(1);
$status = '<span class="green textshadow"># Soubor :: '.$filename.'-'.$randident.$format.' byl vytvořen.</span>';
} else {
sleep(1);
$status = '<span class="red bold textshadow"># Název souboru neobsahuje povolené znaky [a-z] [0-9].</span>';
}
?>
K čemuž patří tedy tato funkce function checkpreg(){
global $filename;
$lowfilename = strtolower($filename);
if (!ctype_alnum($lowfilename)) return false;
if (!preg_match("/\S/m", $lowfilename)) return false;
return true;
}
Našel jsem tento novější dotaz http://diskuse.jakpsatweb.cz/?action=vthread&forum =9&topic=135247Kde chce přesně to, co chci já. Vyzkoušel jsem všechny postupy, které mu navrhují.
Ale pokaždý když odešlu formulář
s např. názvem souboru karel12 (což má být povoleno) obsahuje jen písmena, čísla, je bez mezer, atd... Tak i přesto mě funkce vyhodí false a dostanu echo, že název souboru obsahuje nepovolené znaky.
:( Já si s těma regulárníma výrazam nedokážu poradit
