Символ доллара в функции eval phpPhp

Кемеровские программисты php общаются здесь
Anonymous
Символ доллара в функции eval php

Сообщение Anonymous »

Я пытаюсь использовать функцию eval() в PHP, но в одной из моих переменных (ppi) есть символ доллара.

Код: Выделить всё

$operation = "*";
$cname = mysqli_real_escape_string($link, $_REQUEST['cname']);
$to = mysqli_real_escape_string($link, $_REQUEST['email']);
$prod = mysqli_real_escape_string($link, $_REQUEST['prod']);
$desc = mysqli_real_escape_string($link, $_REQUEST['desc']);
$ppi = mysqli_real_escape_string($link, $_REQUEST['ppi']);
$items = mysqli_real_escape_string($link, $_REQUEST['items']);
$total = mysqli_real_escape_string(eval('return '.$ppi.$operation.$items.';'))
Хотя это упрощенно, эквивалентом может быть:

Код: Выделить всё

$operation = "*";
$cname = mysqli_real_escape_string($link, $_REQUEST['cname']);
$to = mysqli_real_escape_string($link, $_REQUEST['email']);
$prod = mysqli_real_escape_string($link, $_REQUEST['prod']);
$desc = mysqli_real_escape_string($link, $_REQUEST['desc']);
$ppi = '$10';
$items = '5';
$total = mysqli_real_escape_string(eval('return '.$ppi.$operation.$items.';'))
Однако всякий раз, когда я пытаюсь запустить этот код, я всегда получаю ошибку HTTP 500.

Подробнее здесь: https://stackoverflow.com/questions/515 ... nction-php

Вернуться в «Php»