Всем здравствуйте, подскажите как исправить ошибку Cannot redeclare createQuery()
, как я понял нельзя так две функции писать, скорее всего это грубейшая ошибка, помогите решить эту задачу..
function createQuery($id, $a, $b){
$query = "INSERT INTO opisanie (x,text,text_opis) VALUES ";
$limit = count($a);
for($i=0; $i<$limit; $i++){
$query .= "('{$id}','{$a[$i]}', '{$b[$i]}')".($i!=$limit-1?',':'');
}
$res = mysql_query($query);
}
$aText = $_POST['form_text_o'];
$aOpis = $_POST['form_text_opis'];
$query = createQuery($id, $aText, $aOpis);
function createQuery( $e, $s, $c, $d, $id){
$queryz = "INSERT INTO menu_zav (name,sostav,gramm,cena,x_zav) VALUES ";
$limita = count($e);
for($is=0; $is<$limita; $is++){
$queryz .= "('{$e[$is]}','{$s[$is]}','{$c[$is]}','{$d[$is]}','{$id}')".($is!=$limita-1?',':'');
}
$resa = mysql_query($queryz);
}
$eName = $_POST['form_name_menu'];
$eOpisa = $_POST['form_opis_menu'];
$eGr = $_POST['form_gr_menu'];
$eCena = $_POST['form_cena_menu'];
$queryz = createQuery($eName, $eOpisa, $eGr, $eCena, $id);
Так как это PHP, а не Java или C#, к примеру, где можно писать одинаковые имена методов, но с разной сигнатурой (перегрузка методов), то единственным выходом является объявление метода с другим именем. Как его называть решать уже вам.
Только называйте осмысленно, а не createQuery1
и createQuery2
Если принципиально использовать именно одноименную функцию, то могу предложить использовать Аргументы переменной длины. Так как версия PHP строго не определена, реализация будет отличаться. Проще всего вам будет обратится к документации PHP для получения дополнительной информации.
В заключении хочется добавить, что это не самая лучшая идея.
А почему Вы останавливаетесь на середине унификации? соберите все массивы в один двумерный (первая "строка" - имена полей, остальные - значения), и передавайте в функцию имя таблицы и этот массив. А список полей для вставки и блоки значений при формировании текста запроса собирайте implode-ом строки.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
В битриксе есть обработчик, который я хочу использовать для сбора отчетов:
Есть два блокаНеобходимо, чтобы при клике на блок №2 не срабатывало действие клика по блоку №1
Пытаюсь вытащить данные с сайта, используя скрипты Google DocsЦель: заполнение таблицы
Это окошко регистрации/авторизации Сам js: