переменная php передается в запрос MySQL - PullRequest
0 голосов
/ 20 февраля 2011

Не уверен, что я делаю не так? Никогда не сталкивался с этим вопросом раньше? Но это также первая функция, которую я написал.

<?php
function category($string){
if(preg_match("/(Slimming|Laser|Spa|Massage|Manicure|Pedicure)/i", $string)){  
echo 'Spa';
}
}  // This is function.php

$title = 'Spa';

include 'function.php';
$category = category($title);
$category = mysql_real_escape_string($category);
echo "$category<br>"; // I get Spa
var_dump("$category"); //added for testing, I get string(0) ""

$ category затем отправляется на вставку MySQL, значение в базе данных пустое ...

Спасибо за помощь.

Ответы [ 2 ]

2 голосов
/ 20 февраля 2011
echo 'Spa';

Должно быть:

return 'Spa';

и

var_dump("$category");

Должно быть:

var_dump($category);

Функции всегда должны возвращать значение, если выопределяя переменную, иначе вы ничего не делаете.

0 голосов
/ 20 февраля 2011

Вы получаете вывод "Spa" при вызове category($title), потому что в функции есть echo вместо return.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...