|
|
|
| Здравствуйте!
Делаю выборку из базы и в цикле вывожу checkbox-ы
Мой код:
<form name="forma" action="formselect.php" method="post">
<?php
include("config.php");
$select=mysql_query("select * from Courses limit 3");
$mass=mysql_fetch_array($select);
do
{
$title=$mass['Title'];
$CID=$mass['CID'];
echo "<label>$title</label>";
echo "<input name='$CID' type='checkbox' value='$CID' /><br>";
}
while($mass=mysql_fetch_array($select));
?>
<input name="sub" type="submit" value="Добавить курс" />
</form>
|
Как мне в обработчике определить значения, которые я передаю?
Если бы я в ручную формировал чек боксы,
то я заранее знал бы какие названия полей передаю
и проблем не было.
А в цикле значения чек боксов динамические и как значения отследить?
Тут я в замешательстве. | |
|
|
|
|
|
|
|
для: V@ldem@r
(20.07.2010 в 20:16)
| | Тут я в замешательстве
Ничего удивительного, Вы же содрали у Е. Попова, а нужно было учиться у И. Симдянова
Отучайтесь использовать do while
<form name="forma" action="formselect.php" method="post">
<?php
include("config.php");
$select=mysql_query("select * from Courses limit 3");
while($mass=mysql_fetch_array($select)){
echo "<label>$mass['Title']</label>";
echo "<input name='check[$mass['CID']]' type='checkbox' value='$CID' /><br>";
}
?>
<input name="sub" type="submit" value="Добавить курс" />
</form>
|
а в обработчике лопатишь массив check[ ] | |
|
|
|
|
|
|
|
для: Valick
(20.07.2010 в 20:33)
| | Зачем value='$CID' ? | |
|
|
|
|
|
|
|
для: sim5
(20.07.2010 в 20:49)
| | а как же я еще передам значение? | |
|
|
|
|
|
|
|
для: V@ldem@r
(20.07.2010 в 21:01)
| | У вас в имени чекбокса это же значение также указывается. Вам мало одного? Если это ID, то достачтоно либо в значении его передавать, либо если значения могут быть произвольными, то в имени. | |
|
|
|
|
|
|
|
для: sim5
(20.07.2010 в 21:05)
| | вы правы. А с массивом check, вы не подскажите как работать? | |
|
|
|
|
|
|
|
для: V@ldem@r
(20.07.2010 в 21:10)
| | Что значит работать? | |
|
|
|
|
|
|
|
для: sim5
(20.07.2010 в 21:31)
| | чтобы обработчик узнал, какие именно данные ему были переданы из чек боксов. | |
|
|
|
|
|
|
|
для: V@ldem@r
(20.07.2010 в 21:33)
| | Что значит данные? Я не вижу, чтобы вы в чекбокс вставляли данные, вы вставляете туда некие ID. Вам уже написали как вывести в форму массив чекбоксов:
<input name='check[]' type='checkbox' value=$mass['CID'] />
На сервере вы получите массив $_POST['check'] (или $_GET, если этим методом передаваться форма будет), только те, которые выбрал пользователь, а значения выбранных будут равны ID, которые вы им прописали. | |
|
|
|
|
|
|
|
для: sim5
(20.07.2010 в 21:36)
| | спасибо. Буду пробывать. | |
|
|
|
|
|
|
|
для: Valick
(20.07.2010 в 20:33)
| | Извините, ничего я не сдирал у Е. Попова, а цикл этот во всех книгах описывается.
С массивом check я ни разу не работал.
Кстати, ваш код не работает.
Не могли бы вы тога подробнее описать, как пролапатить массив check? | |
|
|
|
|
|
|
|
для: V@ldem@r
(20.07.2010 в 20:55)
| | Не буду просить Вас перечислять все книги, но назовите хотя бы одну где для обработки результата выборки из БД используется цикл do while
Кстати не работает Ваш код а не мой :)
Для перелопачивания любого массива разработчики РНР внедрили цикл foreach
примерно вот так нужно от него плясать
foreach ($_POST[check] as $key=>$value){
echo $key." = ".$value;
}
|
___
С массивом check я ни разу не работал.
это не какой-то зарезервированный массив, на его месте мог бы быть массив beck, shmeck, xpenonek и тд, на сколько хватит фантазии. | |
|
|
|
|
|
|
|
для: Valick
(20.07.2010 в 20:33)
| | У меня похожая проблема. Я вставила ваш код, но он выдает ошибку. на двух строках вывода:
echo "<label>$mass['Title']</label>";
echo "<input name='check[$mass['CID']]' type='checkbox' value='$CID' /><br>";
|
и такая ошибка у меня уже не первый раз, к примеру в запрос я не могу сразу написать $mass['Title']. Начинает работать только если сделать так:
А ошибка такая:
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in Z:\home\diplom\www\indexmod.php on line 17
Скажите пожалуйста в чем причина? | |
|
|
|
|
|
|
|
для: tonechka
(21.07.2010 в 12:10)
| | ну я немного забыл про value='$CID'... там тоже нужно value='$mass['CID']'
проблемы у Вас не закончаться пока не будете бездумно вставлять мой (либо чей-то еще) код.
у автора я не вижу в запросе названия полей, поэтому не могу написать корректно, мой код лишь показывает как избавиться от do while
дайте строку вашего запроса
echo "<label>".$mass[title]."</label>";
echo "<input name='check[".$mass[cid]."]' type='checkbox' value='".$mass[cid]."' /><br>";
|
так работает? | |
|
|
|
|
|
|
|
для: Valick
(21.07.2010 в 12:35)
| | я только начинаю программить на пхп, и код чужой не тупо вставляю себе. а пытаюсь понять, что к чему.... так что уж не судите строго!
ну к примеру вот упрощенный вариант запроса:
$idi=$mass['id'];
$forum=mysql_query("insert into forum (id, type, name, intro, forcesubscribe) values ($idi, 'news', 'Новостной форум', 'Главные новости и объявления', 1)");
|
если я пытаюсь сразу в поле id в таблицу вставить $mass['id'], то ошибка появляется, а если я сначала сохраню значение из массива в переменную, в данном случае $idi, то все нормально работает. почему так получается? и еще вопросик, почему плохо использовать do while? | |
|
|
|
|
|
|
|
для: tonechka
(21.07.2010 в 13:30)
| | Поймите мне не трудно ответить, но для того чтобы грамотно задать вопрос нужен хоть какой-то начальный уровень знаний. Зомбикодеры, так лично я называю последователей секты Е. Попова, на базе видеокурса которого кроме франкенсайта (производная от франкенштейна) ничего нормального не получится.
Про do while много раз говорили на этом форуме. В любой книге написано, что этот цикл в отличии от while выполниться хотя бы раз, а если запрос не вернет вам ни одной строки, то вы получите ошибку при выводе несуществующих переменных. Этот цикл нужно использовать там где решение о продолжении цикла можно принять не ранее одной итерации т.е. в самом теле цикла.
Для того что бы решать проблемы с неправильным синтаксисом запроса, нужно сам запрос сохранять в переменной, тогда его можно вывести при отладке на экран.
$query="insert into forum (id, type, name, intro, forcesubscribe) values ($idi, 'news', 'Новостной форум', 'Главные новости и объявления', 1)";
echo $query;
$forum=mysql_query($query);
|
| |
|
|
|
|
|
|
|
для: Valick
(21.07.2010 в 12:35)
| |
echo "<label>".$mass[title]."</label>";
echo "<input name='check[".$mass[cid]."]' type='checkbox' value='".$mass[cid]."' /><br>";
|
Вот так заработало. Спасибо огромное! а можно для особо одаренных, то есть для меня)))) в чем была проблема??? почему надо писать ". ." ???? | |
|
|
|
|
|
|
|
для: tonechka
(21.07.2010 в 13:39)
| | проблема? поверьте это не проблема это всего лишь синтаксис. для этого нужно, как я уже говорил учить азы. например чем отличаются двойные кавычки от одинарных и где нужно их использовать а где нет.
input name='check[$mass['CID']]' type='checkbox' value='$CID'
|
тут происходит путаница с одинарными кавычками
то как я написал с ".." улучшает наглядность при подсветке кода редактором (см. ниже у sim5)
____
проблему Вы получите чуть позже, не знаю как у Вас устроен код, но отказ от автоинкремента при формировании id требует повышенного внимания. | |
|
|
|
|
|
|
|
для: tonechka
(21.07.2010 в 13:39)
| |
<?
echo "<label>".$mass['title']."</label>";
echo "<input name='check[".$mass['cid']."]' type='checkbox' value='".$mass['cid']."' /><br>";
|
Если начинаете, то запомните золотое правило - строковые значения в кавычки.
И о пять - зачем для имени и значения чекбокса одно и тоже значение, ID? | |
|
|
|
|
|
|
|
для: sim5
(21.07.2010 в 14:01)
| | И о пять - зачем для имени и значения чекбокса одно и тоже значение, ID?
да не в этом суть :) | |
|
|
|
|
|
|
|
для: Valick
(21.07.2010 в 14:04)
| | Если в два атрибута чебокса/радиокнопки вставляется одно и тоже значение, пусть ID, то это говорит только о том, что программист сам не знает для чего это он делает, если конечно, это не "авось" - "может там возьму, а вдруг по другому получится..." | |
|
|
|
|
|
|
|
для: sim5
(21.07.2010 в 14:12)
| | Всем спасибо за ответы. Только проблема у меня не в отображении самих чекбоксов в цикле. А в обработке значений, которые выбрал пользователь.
Примерно вот так:
1)Пользователь отмечает несколько чекбоксов;
2)Значения чекбоксов посылаются в файл обработчик;ж
3)А вот в файле обработчике мне нужно узнать, вернее не мне, а обработчику, какие значения были переданы.
А насчет value не обращайте внимание. Суть не в этом была. | |
|
|
|
|
|
|
|
для: V@ldem@r
(21.07.2010 в 15:06)
| | покажите код обработчика | |
|
|
|
|
|
|
|
для: V@ldem@r
(21.07.2010 в 15:06)
| | Вот-вот:
>1)Пользователь отмечает несколько чекбоксов;
>2)Значения чекбоксов посылаются в файл обработчик;
>3)А вот в файле обработчике мне нужно узнать, вернее не мне, а обработчику, какие значения были переданы.
>А насчет value не обращайте внимание. Суть не в этом была.
Логика просто убийственная! Ибо "проблема у меня не в отображении самих чекбоксов в цикле. А в обработке значений, которые выбрал пользователь."
Вы должны знать, что такие элементы формы как чекбокс и радиокнопка, на сервер будут переданы только те, которые выбирает пользователь, невыбранные такие элементы сервером не будут получены. Не передаются на сервер и те элементы формы, которые не имеют имени (не указан атрибут name/id). Элемент SELECT формы будет передавать то значение опшена, которое выбрал пользователь.
Если вы помещаете в форму чекбокс/чекбоксы, то вы должны четко представлять для чего, и что, и как из полученных значений этих элементов будете обрабатывать, и для каких целей.
Если вы выводите список неких записей, которые пользователь может выбрать, а вы обработав этот выбор выводите, например, уже подробное описание выбранных пользователем записей, то что вам необходимо? Скорее всего передать ID этих записей пользователю для выбора. В какой атрибут чекбокса их поместить? Тут даже и задумываться не стоит - в поле value, а имена чекбоксов должны отображать массив их, и добавляя в имя тоже ID записи, страшного вы не делаете, но они будут мертвым грузом, лишними байтами переданные пользователю.
Вам на сервере нужны ID, и получив массив по имени (одномерный индексный массив), просто забрать значения этого массива (они как раз возращаются атрибутом value), пропустить их через intval() и подставить, например как список ID в mysql-запросе. Чтобы получить ID из атрибута name, то вам нужно получать уже ключи полученного массив, а это уже одна лишняя операция.
Когда оправдано/нужно помещение ID в имя элемента? Видимо тогда, когда пользователь, например, в одной ID записи может выбрать несколько предложений. Вот тогда вы можете записать так:
[url]<input type="checkbox" name="check[25]" value="12">
<input type="checkbox" name="check[25]" value="15">
<input type="checkbox" name="check[25]" value="20">[/url]
Здесь у записи с ID равным 25, пользователь может выбрать записи с ID равными 12, 15, 20, родителем для которых является запись с ID=25. В этом случае вы на сервере уже будете получать многомерный массив, и обрабатывать его нужно несколько иначе. Но только таким образом можно связать некие данные, только в этом случае есть смысл такого именования элементов формы.
В общем надо думать, а не гонять лишние байты пользователю, и хорошо представлять что вы пытаетесь сделать, для чего это требутеся, и в каком виде удобнее, выгоднее. | |
|
|
|
|
|
|
|
для: sim5
(21.07.2010 в 15:38)
| | [url]<input type="checkbox" name="check[25]" value="12">
<input type="checkbox" name="check[25]" value="15">
<input type="checkbox" name="check[25]" value="20">[/url]
??? | |
|
|
|
|
|
|
|
для: Valick
(21.07.2010 в 15:48)
| | Что вас так удивило? | |
|
|
|
|
|
|
|
для: sim5
(21.07.2010 в 15:54)
| | откуда тут возмется многомерный массив? на сервере Вы получите одно из трех значений сколько бы галочек Вы не ставили | |
|
|
|
|
|
|
|
для: Valick
(21.07.2010 в 15:57)
| | Вы поторопились, ибо лишили меня возможности ВВ-тег подправить и указать размерность массива. ;-) | |
|
|
|
|
|
|
|
для: sim5
(21.07.2010 в 15:38)
| | PS.
<input type="checkbox" name="check[25][]" value="12">
<input type="checkbox" name="check[25][]" value="15">
<input type="checkbox" name="check[25][]" value="20">
|
| |
|
|
|
|
|
|
|
для: sim5
(21.07.2010 в 15:38)
| | спасибо за очень развернутый ответ.
Рассказываю зачем я все это делаю.
У меня есть база, мне надо из нее переместить данные в другую базу, при этом учитывая связи полей таблиц. (обе базы хранят в себе данные по дистанционному обучению)
Необходимо перекочевать не всем данных сразу, а только выборочным.
Поэтому я подключаюсь к первой базе, выдергиваю айдишники нужных мне данных в виде чекбоксов, если есть другой вариант, то скажите и передаю их в обработчик, который должен в базе мудла создать курсы с такими же айдишниками.
Я понимаю, может быть немного не понятно объяснил, но как могу, если что поправьте.
Если бы это можно было сделать просто так, т.е. выбрать значения из одной таблицы базы N и добавить в таблицу базы M, но при таком варианте данные у меня не отображаются в системе(moodle), только в базе. Я так пока и не понял почему так происходит. Опытным путем было установлено, что добаление через свой скрипт он отображает только тогда, когда осуществляется переход на страницу с только что добавленным курсом (как пример).
Данные которые храняться в обеих базах однотипные (конечно поля разные по количеству). | |
|
|
|
|
|
|
|
для: V@ldem@r
(21.07.2010 в 16:08)
| | >Я понимаю, может быть немного не понятно объяснил
Скажу откровенно, что "база мудла" для меня, это тоже, что и гадание гадалки в тринадцатую лунную ночь на исходе полнолуния.
Взять и поместить, это не проблема. Если вы выбераете чекбоксами, например, ID записей (которые как значения атрибутов value), и форма передается методом POST, то получив форму, в обработчике ее, достаточно из этих выбранных ID сформировать запрос на выбор из базы всех значений (если атрибуты name чекбоксов у вас именуются как check[]):
<?
//формируем список ID для запроса
$id = implode(",", array_map('intval', $_POST['check']));
//получаем все поля записи для этих ID
//(возможно и не все, тогда укажите конкретные поля в запросе)
mysql_query("SELECT * FROM `tableName` WHERE `id` IN(" . $id . ")");
|
Полученный ресурс пройти циклом и подготовить из полученных данных строку для многострочного оператора INSERT. Сделать запрос INSERT для новой таблицы.
Чтобы увидеть изменения в новой таблице, нужно их вывести (запрос на выбор) на страницу, иначе вы и не увидите изменений, ну если только в РМА, например, не заглянуть. Можете делать перенос и с помощью РМА (импорт/экспорт), где вы тоже можете выбрать число записей для экспорта.
PS. "при этом учитывая связи полей таблиц"... Имеется ввиду, при получении автоинкрементом новых id-значений в новой базе, не нарушить связь? Можно в новой таблице предусмотреть поле, например, `oldid`, которое будет содержать id старой таблицы. Тогда во всех новых таблицах связанных с ней, обновить поля содержащие старые связи со занчения `oldid` на новые сформированные id. После этого поле `oldid` можно удалить. В общем, типа в таком ключе. | |
|
|
|
|
|
|
|
для: V@ldem@r
(21.07.2010 в 16:08)
| | >спасибо за очень развернутый ответ.
>Рассказываю зачем я все это делаю.
>
>У меня есть база, мне надо из нее переместить данные в другую базу, при этом учитывая связи полей таблиц. (обе базы хранят в себе данные по дистанционному обучению)
>
>Необходимо перекочевать не всем данных сразу, а только выборочным.
>
>Поэтому я подключаюсь к первой базе, выдергиваю айдишники нужных мне данных в виде чекбоксов, если есть другой вариант, то скажите и передаю их в обработчик, который должен в базе мудла создать курсы с такими же айдишниками.
>
>Я понимаю, может быть немного не понятно объяснил, но как могу, если что поправьте.
>
>
>Если бы это можно было сделать просто так, т.е. выбрать значения из одной таблицы базы N и добавить в таблицу базы M, но при таком варианте данные у меня не отображаются в системе(moodle), только в базе. Я так пока и не понял почему так происходит. Опытным путем было установлено, что добаление через свой скрипт он отображает только тогда, когда осуществляется переход на страницу с только что добавленным курсом (как пример).
>
>
>Данные которые храняться в обеих базах однотипные (конечно поля разные по количеству).
автор: sim5 (21.07.2010 в 15:58) письмо автору
для: sim5 (21.07.2010 в 15:38)
PS.
<input type="checkbox" name="check[25][]" value="12">
<input type="checkbox" name="check[25][]" value="15">
<input type="checkbox" name="check[25][]" value="20">
Вам что-то подобное нужно? Или нет? | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(21.07.2010 в 17:14)
| | Завтра выложу скрипт если он будет без ценен. | |
|
|
|
|
 1.6 Кб |
|
|
для: Гавриленко Дмитрий
(21.07.2010 в 19:12)
| | Вот примерный скрипт
Файл с формой
<?php
$conn = mysql_connect("localhost","1","1");
$db = mysql_select_db("test1",$conn);
$quer = "SELECT * FROM test ORDER BY id";
$query = mysql_query($quer) or exit("Пока!");
$row = mysql_fetch_array($query);
echo '
<form action=v.php method=post>
';
while($row = mysql_fetch_array($query))
{
echo "<label>Название курса: \"".$row['title']."\" ID курса: \"".$row['id']."\"</label>";
echo "<input name=id[] type='checkbox' value=".$row['id']." /><br><p>\n";
}
echo '
<input type=submit>
</form>';
?>
|
файл обработчик
<?php
$conn = mysql_connect("localhost","1","1");
$db = mysql_select_db("test1",$conn);
$id = $id[] = $_POST['id'];
if(!empty($id))
{
echo 'Были перемещены следующие статьи.<br>';
foreach($id as $var)
{
//Соединияемся с базой для извлечения данных.
$quer = "SELECT * FROM test WHERE id = $var";
$query = mysql_query($quer) or exit("Пока!");
$row = mysql_fetch_array($query);
//Заганяем все данные в переменные
$oldid = $row['id'];
$title = $row['title'];
//$text = $row['text'];
//$date = $row['date'];
//И так далее и тому подобное!
//Вставляем в другую таблицу данные
$quer2 = "INSERT INTO `test2` ( `id` , `title` , `oldid` ) VALUES ('','$oldid','$title')";
$query2 = mysql_query($quer2);
//Удаляем данные из прежней таблицы
$quer3 = "DELETE FROM `test` WHERE `id` = $var";
$query3 = mysql_query($quer3);
echo 'ID: <b>',$var,'</b> Название: <b>',$title,'</b><br>';
}
}
else echo 'Не чего не выбрали!';
?>
|
дамп таблицы
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
--
-- Хост: localhost
-- Время создания: Июл 22 2010 г., 17:17
-- Версия сервера: 5.0.45
-- Версия PHP: 5.2.4
--
-- БД: `test1`
--
-- --------------------------------------------------------
--
-- Структура таблицы `test`
--
CREATE TABLE `test` (
`id` int(5) NOT NULL auto_increment,
`title` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=9 ;
--
-- Дамп данных таблицы `test`
--
INSERT INTO `test` VALUES (3, 'Уроки CSS');
INSERT INTO `test` VALUES (4, 'Уроки FLASH');
INSERT INTO `test` VALUES (5, 'Уроки JavaScript');
INSERT INTO `test` VALUES (6, 'Уроки ActivX');
INSERT INTO `test` VALUES (1, 'Уроки HTML');
INSERT INTO `test` VALUES (2, 'Уроки PHP');
-- --------------------------------------------------------
--
-- Структура таблицы `test2`
--
CREATE TABLE `test2` (
`id` int(5) NOT NULL auto_increment,
`title` text NOT NULL,
`oldid` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;
--
-- Дамп данных таблицы `test2`
--
-- --------------------------------------------------------
|
если что, то все файлы я прикрепил..
Пользователь Mysql: 1
Пароль: 1
Сервер: localhost | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(22.07.2010 в 17:19)
| | По рукам надо бить за такие примеры. | |
|
|
|
|
|
|
|
для: sim5
(22.07.2010 в 17:53)
| | гг, почему? | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(22.07.2010 в 17:55)
| | Потому, что хх, причем полная. | |
|
|
|
|
|
|
|
для: sim5
(22.07.2010 в 17:57)
| | Что не так? Перемещение инфы из одной базы в другую. Суть скрипта не в том что ли? | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(22.07.2010 в 18:35)
| | Все не так, начиная от мелких глупостей, кончая вообще логикой переноса данных. Говорить долго сейчас некогда, но причину такого написания вами скриптов я скажу - у вас чапаевский метод их написания, а он вреден. | |
|
|
|
|
|
|
|
для: sim5
(22.07.2010 в 18:47)
| | Объясните как писать не чапаевским методом... Пожалуйста. | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(22.07.2010 в 18:54)
| | Думать. | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(22.07.2010 в 18:54)
| | данные не нужно доставать с сервера mysql их и так можно свободно перенести
и уж тем более делать эти три запроса в цикле (при 10 чекбоксах - 30 (!) запросов)
попробуйте вот так (убрав автоинкремент со второй таблицы):
$query = "INSERT INTO test2 (id, title ) SELECT id, title FROM test WHERE id IN $id";
|
вторым запросом если нужно то удалять данные из первой таблицы
$query2 = "DELETE FROM test WHERE id IN $id";
|
всего два запроса к базе при любом количестве выбранных чекбоксов | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(22.07.2010 в 17:19)
| | Спасибо Вам большое за помощь! | |
|
|
|
|
|
|
|
для: V@ldem@r
(22.07.2010 в 20:49)
| | Все получилось! Ура.
Только походу возникла еще одна трудность.
Как я уже и писал ранее, необходимо, чтобы после добавления в базу инфы, осуществлялся переход на страницу, где уже отображается только что добавленный курс. Все это дело работает только для одной итерации в цикле.
Мне же нужно, чтобы это срабатывало для множества операций в цикле.
Вот код:
<?php
//выборка из базы елеарнинг
include("confelearn.php");
error_reporting(E_ALL);
$cid = $cid[] = $_POST['cid'];
if(isset($cid))
{
foreach($cid as $key=>$id)
{
$select=mysql_query("select * from Courses where CID=$id");
$mass=mysql_fetch_array($select);
$idi=$mass['CID'];
$fullname=$mass['Title'];
$summary=$mass['Description'];
include ("configmoodlle.php");
$ins=mysql_query("insert into mdl_course (category, id, fullname) values (1, $idi, '$fullname) ");
if ($ins==true)
{
echo "<html><head>
<meta HTTP-EQUIV='Refresh' Content='1; URL=http://moodle/course/view.php?id=$idi'>
</head></html>";
}
}
}
|
| |
|
|
|
|
|
|
|
для: V@ldem@r
(22.07.2010 в 21:52)
| | Полный ужас - один не думая пишет, другой копирует. Вы так и дальше собираетесь скрипты писать? | |
|
|
|
|
|
|
|
для: sim5
(22.07.2010 в 21:58)
| | А в чем ужас то? Что тут неправильно? На то он и форум, чтобы людям подсказывать. Все с чего-то начинают, Вы тоже не сразу вероятно писать начали на профессиональном уровне. А критиковать любой может. | |
|
|
|
|
|
|
|
для: V@ldem@r
(22.07.2010 в 22:41)
| | > Вы тоже не сразу вероятно писать начали на профессиональном уровне. А критиковать любой может.
Коронная фраза.
Вы читаете, что дальше люди пишут? Если вы учитесь - учитесь у профессионалов, а не у людей, под постами которых пишут "плохой пример". Логично?
Вот что это за счастье - $id = $id[] = $_POST['something']? Вы понимаете смысл этой строки? Если не понимаете - зачем используете. Если понимаете - тем более, зачем тогда используете?
А вот это:
$cid = $cid[] = $_POST['cid'];
if(isset($cid))
|
Понимаете?
Или это:
foreach($cid as $key=>$id)
|
Зачем вам еще и ключ? Мне, когда я смотрю на такую запись, думается, что ключ будет где-то использоваться.
Либо if ($ins) либо if ($ins === true), и что применять - тоже зависит от ситуации. Вы понимаете этот момент?
echo "<html><head>
<meta HTTP-EQUIV='Refresh' Content='1; URL=http://moodle/course/view.php?id=$idi'>
</head></html>";
|
Прелесть.
Не хотел ведь лезть, черт дернул | |
|
|
|
|
|
|
|
для: V@ldem@r
(22.07.2010 в 22:41)
| | >А в чем ужас то?
Во всем.
>Что тут неправильно?
Зачем вам объяснять, коли вы все равно задумываться не хотите? | |
|
|
|
|
|
|
|
для: V@ldem@r
(22.07.2010 в 22:41)
| | А в чем ужас то? Что тут неправильно?
у меня складывается впечатление, что вы не все посты читаете, я Дмитрию подробно расписал что там неправильно | |
|
|
|
|
|
|
|
для: Valick
(22.07.2010 в 23:33)
| | >А в чем ужас то? Что тут неправильно?
>у меня складывается впечатление, что вы не все посты читаете, я Дмитрию подробно расписал что там неправильно
Благодарю! | |
|
|
|