Kак да забраня ?

burkoff

Registered
Здравейте имам следния проблем

имам едно инпут поле с което записвам в inc фаил
искам да забраня записването на специалните символи ?
т.е като ми напишат
Код:
<?  phpinfo(); ?>
да си го получа така .Защото като го листна и то се изпълнява от сървъра ;) .Можеби сте имали подобен проблем .Очаквам вашите предложения
 
Код:
<?
$danni="<?  phpinfo(); ?>";

$danni=str_replace("?",'?',$danni);
$danni=str_replace("<",'<',$danni);
$danni=str_replace(">",'>',$danni);

echo $danni;
?>

Заменя специалните символи с техния цифров код.
Така няма да се изпълнят в php кода.

Виж повече за цифровите кодове:
http://web-tourist.net/login/login/view.php?st=346
 
@admin млако не ми стана ясно но ще го разуча ...
аз просто не искам да се изпълнява командата ;)
тук има нещо показано но .. не можах да го разбера
http://bg.php.net/manual/en/function.htmlspecialchars.php
 
добремм как да ти го обясня по лесно мм ..
ако се сещаш туториалите за HTML как са направен така, че във самия сайт се виждат таг-овете т.е. примерно виждаш
<a href="neshto">А</a>
а невиждаш самия линк като линк ( т.е. само А )
ако си ме разбрал.Кода на админа е същия.
htmlspecialchars() също е решение.
 
справих се сега ще дам пример ;)

Код:
$symbol = htmlspecialchars("$текста", ENT_QUOTES);

и след това не записвам $текста а записвам $symbol в .inc фаил ;) след, което във файла са се добавили специланите символи ако е необходимо ... ;)

скоро ми бяха написали един сцрипт в една моя форма ;) но се справих ;)
 
Моя Грешка....

Другия вариант е:

Код:
<? 
$danni="<?  phpinfo(); ?>"; 

$danni=str_replace("?",'',$danni); 


//после запис на $danni в inc файла.

?>

Така махаш всички ? от данните които са ти изпратили чрез инпут.
 
може даже да направиш нещо от 2-та кода :)
и с str_replace() и със htmlspecialchars() :wink: :?:
 

Back
Горе