Вот я тут тоже с запросиком бьюсь!!!! ПОСМОТРИТЕ----<input type=\"checkbox\" name=\"c31\" value=\"$c31\">------так проблема в том, что значения никакие не передаются из флага...ПОЧЕМУ!!!!!вроде с виду такая невинная штучка, а так раздражает...как передать значение базе--отмечено или нет...
НО!!! есть такая вещь $c31 = intval(isset($_REQUEST['c31'])); я только не знаю куда её всунуть, ведь значение из форме по value передается, неужели для такой мелочи JS надо писать...ну не верю.....Кто-нидь знает!!!!!! |
Kxu у вас должно быть две части скрипта одна форма для заполнения, в ней находиться вашь checkbox
<input type=\"checkbox\" name=\"c31\" value=\"$c31\"> при условии, что вы поставили галку на нем при отправки формы и переменная $c31 не пустая, то это все передасться во вторую часть скрипта, где это все обрабатываеться, эта переменная теперь будет конфигурировать как $_REQUEST['c31'] и вставляете вы ее уже куда хотите и делаете нужные вам проверки. |
Soniks , я не могу больше, но не работает все равно, может ошибка в базе, как определить значение атрибута в базе, которое передается по value из checkbox, вроде все так и есть в программе, я бы так и не замарачивалась с самого начала, так все ровно и получилось, но в чем то прокол все равно????
function add_Flat() { echo "<form enctype=\"multipart/form-data\" action=\"index.php?name=$module_name\" method=\"post\">" ."<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" align=\"center\">"; echo "<tr><td>"._LIFT.":</td><td><input type=\"checkbox\" name=\"c31\" value=\"$c31\"></td></tr>"; echo "<tr><td>"._PHONE.":</td><td><input type=\"checkbox\" name=\"c29\" value=\"$c29\" ></td></tr>"; echo "<tr><td colspan=\"2\" align=\"center\"><input type=\"hidden\" name=\"op\" value=\"flat\">" ."<input type=\"submit\" value=\""._FADD."\"></td></tr></form></table>"; } function flat($c29, $c30, $c31) { $c29 = stripslashes(FixQuotes($c29)); $c30 = stripslashes(FixQuotes($c30)); $c31 = stripslashes(FixQuotes($c31)); $ad = $db->sql_query("INSERT INTO ".$prefix."_bd (id, lift, phone) VALUES (NULL, '$c29', '$c31')"); } |
Kxu
в приведенном коде у вас две переменные которые передадуться функции flat, а в самой функции объявлено 3, это не верно, если оно так: PHP код:
Обратите внимание, что в кейсе должно быть так же: PHP код:
|
да, Soniks, просто неаккуратно вырезала лишний код, тебе же не интересно мишуру читать, так вот я так понимаю у меня все правильно и по идее, что должна передать эта переменная $c31 и $c29 ? какое значение? какое значение атрибута в бд должно быть, чтобы все соответствовало? просто передает нули в базу и никакого значения об отмеченности флага, вот....
|
Я даже вот что пишу echo '<pre>', print_r($_POST, 1), '</pre>';----все данные формы выводит, очень чудесно и удобно, вообщем проблема открыта!!!! как работает checkbox??????
|
Soniks , да вообще, тема закрыта, все гениальное ОЧЕНЬ просто.....
На самом деле, для всех кто ожидает от checkbox автомата, как я думала, что будет автоматически да или нет, то при отмеченном флаге передается значение value, при неотмеченном ничего не передается, вот и все!!!! |
Soniks , ещё один вопрос меня преследует!!! Вот создаю я кучу форм для ввода пользователем различных данных, а вдруг пользователь решит что-нибудь пакосное ввести....как отреагирует система??? где можно просветиться на эту тему??? и ещё хочу производить всякого рода проверки...где можно прочитать про всякие казусы и уязвимости....или самой предполагать!!! Может существует какой-либо тест для проверки??? СПАСИБО!!! но меня ещё интересует проверка такого рода типа: ввожу метро, определяется в следующей форме какой район!!!!! Можно такое осуществить!!!!
|
Kxu обычно во всех книгах по пхп приводятся различные варианты проверки вводимых данных пользователем и методы защиты скрипта.
|
Soniks , ладно почитаю, но просто я как-то изучаю так без книг, следуя своей интуиции, а теперь следует наверное почитать !!!!
Ещё одна ситуация, у меня много checkbox, представим большой список выбора. Представили!!! А как теперь их передать из формы на обработку??? все тупо перечислять или можно в один массив запихать??? Но с массивом какие-то проблемы.. Так передает, а массив не хочет!!! Код:
Вроде так!!!!!!А!!! |
Kxu а что именно у вас здесь не работает?
|
Soniks, я хочу передать массив значений, отмеченных в checkbox! но, если тупо перечислять переменные во flat, то все норамально передается, а массив не хочет!!!!
|
вот так:
<input type=\"checkbox\" name=\"c10[".$i."]\" value=\"$mA[$i]\"> у вас будет приходить массив $c10 с ключами $i и значение $mA, если такой массив не передаеться в, то скорее всего он не объявлен как глобальный. |
Soniks ,у меня так смешно получилось!!!!! теперь эта переменная $c10 передает массив, ну слово array!!!! как это так?????
|
Kxu все верно, если переменная являеться массивом и вы пытаетесь ее просто вывести на экран при поможи echo или print то он выведет Array, выводить нужно по ключу массива или переберать все имеющиеся значения массива например при помощи функции foreach
|
Soniks , да,наверное, попробую.... хотя если так подумать, перебор перебором, но если просто так, по произвольному индексу выводить, например $c10[3] почему так-то нельзя, а то выводит просто r?????
|
Kxu по индексу он должен вывести значение
|
Soniks , понятное дело!!! значение, но его-то нет!!!! Вообщем, формирую я массив $c10, из отмеченных значений флага, по идее так хочу!!!! через форму отправляю для обработки, но отправляется слово array, если я ничего не отмечу, то ничего не выводиться для $c10, а если отмечу, и выведу индексом, например $c10[2] выведиться буква r , почему так, Сделала глобальным этот массив $c10, типа описала в этих функциях, но ничего все равно!!!!!!
|
Soniks , смотри что ввожу
PHP код:
а что получаю Array r Array a Array ( [c10] => Array ( [1] => Первое [2] => Второе ) [op] => flat ) Как быть!!!!!!!Вроде передается массив, а никак не взять!!!! :angry: Вообщем, теперь вопрос в другом, вот так я достала значение массива $_REQUEST["c10"][$i] все нормально имею, Но а на прямую как это сделать, чтобы прямо значение массива получить, а не буквы массива....хочу так как типа $c10[1] и значение массива "Первое" КАК!!!!!! |
$c10=$_POST['c10'];
echo $c10[1].$c10[2]; |
Soniks , спасибо, но я то через $_REQUEST["c10"][$i] , уже все значения повытаскивала, вот думаю на локалке-то работает такое, а если на серваке отключит register_global, то работать $_REQUEST не будет, а $_POST????? все равно будет работать!!!!!!
|
Kxu почему не будет, будет!
|
Soniks , как можно сделать, чтобы пользователь при вводе формы в таблицу заносилась дата и время его ввода. Я думаю это надо сделать в форме невидимое что-то и ему присваивать автоматически число и др полю время....Вот есть такая возможность автоматического определения времени и даты, а затем присвоить какому либо невидимому значению, например текстовому!!!! Можно ли!!!!
|
Kxu еще раз повторюсь! учитесь формулировать вопросы!
|
Soniks , я стараюсь, все в процессе,я учусь....
Кратко: хочу хранить дату и время, которое автоматически будет создаваться при заполнении пользователем формы??? Такое возможно, если в базе сделать поле даты и время, но как его заносить туда из формы??? |
|
Soniks , ты просто чудо!!!!! :groupjump :groupjump :groupjump :groupjump
и время аналогично также получилось, главное правильно значение атрибутов поставить!!!! А если поставить значение datetime, то в поле будет заноситься и дата и время. А как по такому полю потом выборку делать??? если отдельно нужно по дате, по времени...????А! |
Kxu вариантов очень много, можно по средством mysql, а можно по средством php принять дату как строку и разобрать ее на нужные составляющие, например как выполнена функция formatTimestamp в mainfile.php
|
Soniks , php средствами все понятно, разбирусь, когда книжку куплю, в конце концов... меня больше интересует sql запрост, например, вывести все данные за последние пол часа??? вообще как это от текущего времени отнять пол часа и сравнивать? я даже не понимаю как вычет по времени сделать?? а если время и дата вместе, то sql сделать вообще труба, но так интересно, любопытство распирает!!!!:bubble:
ААААА как работет эта функция ??? formatTimestamp |
Kxu почитайте руководство по mysql там много различных функций существует для sql и используйте нужные вам, а вычет по времени считайте в скендах time() - это сколько сейчас на сервере времини и отнимайте количество секунд, вот вам и будет время
почитайте описание функций поторые она использует, должны понять как именно. |
в каких ещё скендах????? я такого не слышала???а вот про формат временной метки начиталась!!!! очень любопытно, буду пробовать и делиться опытом и косяками :splash:
|
Kxu в секундах, опечатался...
|
Soniks , ну вот,!!!! а прикольно секунды скендами называть!!!!:lol:
|
Часовой пояс GMT +4, время: 21:32. |
Copyright © 2005 by Soniks