Консультация № 140123
17.07.2008, 14:39
0.00 руб.
0 16 1
Здравствуйте уважаемые эксперты, пытаюсь написать класс для внесения информации в MySQl и хотелось бы почитать информацию по этой теме именно про то как сделать чтобы одним классом можно было занасить информацию в БД из разных форм!

Обсуждение

Неизвестный
17.07.2008, 14:44
общий
Что Вы имеете в виду под выражением "из разных форм"?
Неизвестный
17.07.2008, 14:46
общий
ну тоесть... к примеру у меня есть три формы одна для добавления новости другая для добавления статьи, а третья для коментарий.... и каждой формы разные поля!
Неизвестный
17.07.2008, 15:22
общий
*
Неизвестный
17.07.2008, 15:35
общий
Каждая форма будет передавать скрипту данные только своих элементов. Если объединить их в одну, то они передадутся нормально, в скрипте сделать три разных запроса. В чем проблема?
Не вижу пока что, чем Вас не устраивает встроенная реализация php.
Неизвестный
17.07.2008, 15:41
общий
Я просто сделал вывод вывод этот из того что создают люди классы для работы с базами данных и потом их другие разработчики используют, может они реализованы по какомуто другому принципу......???
Неизвестный
17.07.2008, 15:48
общий
Те, что работают поверх стандартных mysql и mysqli библиотек, предоставляют более простое обращение засчет предусмотренной проверки/экранирования данных, возвращения результата в указанном виде (массив/строка и т.д.), т.е. просто заранее реализуют некие стандартные и рутинные процедуры работы с БД. Вспомните, как обычно приходится делать выборку из БД:
if (mysql_query()) -> if (myslq_num_rows()>0) -> while(mysql_fetch_array())->echo myslq_error() и т.д.
Это просто обертки.
Неизвестный
18.07.2008, 08:30
общий
Ну Вот можно что нибудь почитать про это......мне не очень пока ясно насчет этого всего.......
Неизвестный
18.07.2008, 08:44
общий
Почитайте документацию и исходники популярной DBSimple - возможно, интересно будет.
Неизвестный
18.07.2008, 09:12
общий
Спасибо........но я так думаю пока понять будет сложновато...
Неизвестный
18.07.2008, 09:20
общий
1. Читаете документацию, сравниваете методы в библиотеке со стандартными функциями mysql и mysqli. Именно в плане удобства применения. Там неплохо все расписано.
2. Если хотите разобраться, за счет чего и как именно реализованы методы - копаетесь в коде :)

Т.е. первый пункт - проверка актульности. Надо ли оно Вам :)
Неизвестный
18.07.2008, 09:22
общий
А насчет моего вопроса есть информация какая нибудь ???
Неизвестный
18.07.2008, 09:27
общий
Какого конкретно вопроса? :)
Неизвестный
18.07.2008, 09:34
общий
забыл уже что Вы ответили
Неизвестный
18.07.2008, 09:35
общий
Спасибо за помощ!
Неизвестный
18.07.2008, 11:21
общий
Да не за чтоудачи в программировании
Неизвестный
19.07.2008, 15:27
общий
это ответ
Здравствуйте, Сурыев Назар !
В приложении приведён кусок моего класса для работы с MySql. Функция insert() позволяет легко добавлять любое колличество полей.
<p><fieldset style=‘background-color:#EFEFEF; width:80%; border:#777777 1px solid; padding:10px;‘ class=fieldset><font color=#777777><i>Пример использования функции insert() перемещён в приложение к ответу.</i>
-----
</font><font color=#777777 size=1><b>• Отредактировал: <a href=http://rusfaq.ru/info/user/24116 target=_blank>Admiral</a></b> (Профессор)
<b>• Дата редактирования:</b> 19.07.2008, 16:16 (MCK)</font></fieldset>

Приложение:
Пример использования: <pre> $DB->insert("soft",array( ‘user_id‘ => $USER[‘user_id‘], ‘date‘ => time(), ‘cat_id‘ => (int)$cat, ‘title‘ => $title, ‘stext‘ => $stext, ‘text‘ => $text )); </pre> Класс для работы с MySql: function insert($table,$insert,$dbtable = false,$quote=true) { $query = ""; $names = ""; $values = ""; $size = sizeOf($insert); $i = 0; foreach ($insert as $name=>$value) { $i++; $names .= "`".$name."`"; if ($quote) $value = htmlspecialchars($value); $values .= "‘".$this->escape($value)."‘"; if ($i<$size) { $names .= ","; $values .= ","; } } if ($dbtable) $dbtable = "`".$dbtable."`."; $query = "INSERT INTO ".$dbtable."`".$table."` (".$names.") VALUES (".$values.");"; $this->query($query); return mysql_insert_id(); } function escape($str) { if (!get_magic_quotes_gpc()) { if (function_exists(‘mysql_real_escape_string‘)) return mysql_real_escape_string($str); else mysql_escape_string($str); } else return $str; }
Форма ответа