in to traja 30 sekund? tisti funkcija zagotovo ne porabi 30 sekund za 640 stringov... razen mogoce, ce to delas na zx spectrumu...
povej, kaj bi rad dosegel...
Vini sej je lepo, da bi rad pomagal, a za kaj več povedat bi moral imeti že risalno desko...ali pa kar pastat celotnen php file. Zadeva definitivno porabi včasih 30 sek. Če pustim samo prvi pogoj v if stavku potem plune ven po 5-6 sek.
Res pa je, da nekaj časa porabi za skeniranje celotnega HTMLja in izločanje "grobega stringa".
Mogoče je krivo to, da imam kar tri do-while zanke - eno znotraj druge. Prva izloča stringe, okrog nje vrtim filtriranje, zunanja pa služi za incremet po google straneh.
Anyway, sem mislil da je zadeva bolj preprosta. Prečesal sem tudi tuje forume, a brez konkretnega rezultata.
Najboljši približek sem dobil na devshed forumu:
Možakar tole uporablja za čiščenje user inputa:
<?php
function clean_post_field($var_name, $field_name, $filter, $required = false , $max_length = 0) {
if ($required && !isset($_POST[$var_name])) {
echo "$field_name is required!";
return false;
}
if (preg_match("/$filter/", $_POST[$var_name])) {
echo "$field_name contain invalid characters";
return false;
}
if ($max_length && strlen($_POST[$var_name]) > $max_length) {
echo "$field_name must contain less than $max_length characters";
return false;
}
if (preg_match("/[<](\w+)((\s+)(\w+)[=]((\w+)|(\"\.\")|('\.')))*[>]/", $_POST[$var_name])) {
echo "HTML or Javascript found in POST Field Name: " . $var_name;
return false;
}
if(get_magic_quotes_gpc()) {
$raw_text = stripslashes($_POST[$var_name]);
} else {
$raw_text = $_POST[$var_name];
}
return $raw_text;
}
//example
$first_name = clean_post_field("firstName", "First Name", "[^A-Za-z \'\-]", true, 100);
?>
Verjetno bom malo poexperimentiral z drugim in četrtim if stavko. Vseeno hvala za tvoj čas.
xino