dantist
9.09.2013 - 11:18
Добрый день.
возникла проблема вот текст на HTML в нем пользователь вводит месяц и год
<form method="post" action="101.php">
ГОД: <input type="text" size="4" name="year"/><br />
Месяц: <input type="text" size="1" name="mon" /><br />
<input type="submit" value="ок"/>
</form>
На PHP написал функцию календаря
function calendar($month,$year)
теперь необходимо вывести его
ECHO calendar(9,2013). т.е. выводим сентябрь 2013 года.
Вывожу календарь следующим образом:
ECHO calendar($A,$B)
Вопрос:
Каким образом мне приравнять к $A то что он пользователь введет вот в этой строчке
Месяц: <input type="text" size="1" name="mon" /><br />
TranceIT
9.09.2013 - 11:22
echo calendar($_POST['month'], $_POST['year']);
_____________
Безвозмездно помогаю только тем, кто сам пытается что-то сделать. Остальным за WMR
Даже если там 10 строк кода!
Даже если мне это ничего не стоит!
Даже если вы нуб!
echo calendar($_POST['month'], $_POST['year']); рай для начинающего хакера
vagrand
9.09.2013 - 15:54
Bolik
Цитата |
echo calendar($_POST['month'], $_POST['year']); рай для начинающего хакера |
Интересно что вы тут такого усмотрели?
_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
TranceIT
9.09.2013 - 16:15
Цитата (Bolik @ 9.09.2013 - 12:55) |
echo calendar($_POST['month'], $_POST['year']); рай для начинающего хакера |
Совершенно неуместное замечание.
_____________
Безвозмездно помогаю только тем, кто сам пытается что-то сделать. Остальным за WMR
Даже если там 10 строк кода!
Даже если мне это ничего не стоит!
Даже если вы нуб!
dantist
9.09.2013 - 17:39
за ответы благодарю.
теперь другой вопрос
нужно выбрать из базы данный тот же месяц и год.
к примеру есть в sql таблица data. Со столбцами year,mon,dat,nap
как это написать на PHP?
$sql='select * from data where year='....'mon='....
если вместо точек ставлю-$_POST['month'] не получается
TranceIT
сорри, перегрелся) зависит конечно от того, что в самой функции стоит.
TranceIT
9.09.2013 - 18:18
dantistВам нужно почитать о создании пользовательских функций в
php. А именно передача параметров в функцию.
_____________
Безвозмездно помогаю только тем, кто сам пытается что-то сделать. Остальным за WMR
Даже если там 10 строк кода!
Даже если мне это ничего не стоит!
Даже если вы нуб!
Цитата |
за ответы благодарю. теперь другой вопрос нужно выбрать из базы данный тот же месяц и год. к примеру есть в sql таблица data. Со столбцами year,mon,dat,nap как это написать на PHP? $sql='select * from data where year='....'mon='....
если вместо точек ставлю-$_POST['month'] не получается |
а вот этого делать не стоит.
лучше присвоить значения $_POST['month'] и $_POST['year'] переменным
$year=$_POST['month'] например. для безопасности обработать значения через trim, mysqli_real_escape_string, а только потом подставлять в запрос.
$sql='select * from data where year='"$year"'mon='"$month"'
или так
$sql='select * from data where year='.$year.'mon='.$month.'
NitroGenerate
10.09.2013 - 11:15
function constructArr($arr=false, $type = ",")
{
if(is_array($arr))
{
$filter=array();
foreach($arr AS $key=>$val)
{
$filter[] = "`".$key."` = '".$val."'";
}
$filter = implode(" ".$type." ", $filter);
return $filter;
}
else
return false;
}
$filter = array();
$filter['year'] = (is_numeric($_POST['year']) && preg_match("^(\d{4})$", $_POST['year']))? $_POST['year'] : "";
$filter['mon'] = (is_numeric($_POST['month']) && $_POST['month']>=1 && $_POST['month']<=12)? $_POST['month'] : "";
$filter = constructArr($filter, $type="AND");
$sql="SELECT * FROM data WHERE ".$filter;
$query = mysql_query($sql);
while($res = mysql_fetch_assoc($query))
{
echo "<pre>";
var_dump($res);
echo "</pre>";
}
или можно совсем просто:
$sql="select * from data where `year`='".$_POST['year']."' AND `mon`='".$_POST['month']."'";