|
|
|
|
|
для: neadekvat
(26.09.2010 в 21:36)
| | Спасибо Вам большое, получилось!!!!! | |
|
|
|
|
|
|
|
для: uvajs
(26.09.2010 в 21:17)
| | заменить name="tag" на name="tag[]"
А дальше я показал как надо добавлять в бд.
Еще лучше на пустой странице сделать так:
<?php
if ($_POST) print_r($_POST);
?>
<form method="POST">
<select name="tag" size="3" multiple="multiple">
<option value=1>sdfsdf
<option value=2>sdfsdf
<option value=3>sdfsdf
<option value=4>sdfsdf
<option value=5>sdfsdf
</select>
<input type="submit">
</form>
|
И так
<?php
if ($_POST) print_r($_POST);
?>
<form method="POST">
<select name="tag[]" size="3" multiple="multiple">
<option value=1>sdfsdf
<option value=2>sdfsdf
<option value=3>sdfsdf
<option value=4>sdfsdf
<option value=5>sdfsdf
</select>
<input type="submit">
</form>
|
Чтобы разобраться, в чем разница | |
|
|
|
|
|
|
|
для: neadekvat
(26.09.2010 в 19:58)
| | >В селекте измените имя с tag на tag[], через POST получите массив выбранных тэгов.
>И при внесении в базу соответственно не как строку обрабатывать, а как массив, типа этого:
>
<?php
>foreach ($_POST['tag'] as $tag)
> mysql_query("INSERT INTO posts_tags (tagid,dataid) VALUES ('$tag','$data_id')",$db);
|
Простите не совсем Вас понял, можно подробнее????
и на что tag изменить? | |
|
|
|
|
|
|
|
для: uvajs
(26.09.2010 в 19:51)
| | В селекте измените имя с tag на tag[], через POST получите массив выбранных тэгов.
И при внесении в базу соответственно не как строку обрабатывать, а как массив, типа этого:
<?php
foreach ($_POST['tag'] as $tag)
mysql_query("INSERT INTO posts_tags (tagid,dataid) VALUES ('$tag','$data_id')",$db);
|
| |
|
|
|
|
|
|
|
для: neadekvat
(26.09.2010 в 19:28)
| | >А обработчик показать?
<?php
include ("block/bd.php");
if(isset($_POST['submit_s'])) {$submit_s = $_POST['submit_s'];}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title></title>
<link href="style.css" rel="stylesheet" type="text/css">
<link href="style2.css" rel="stylesheet" type="text/css">
<link rel="icon" href="http://engells.com/favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="http://engells.com/favicon.ico" type="image/x-icon">
</head>
<body>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<?php include("block/header.php");?>
</tr>
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<?php include("block/left_td.php");?>
<td valign="top">
<?php
if(!isset($submit_s))
{
$date = date("Y-m-d");
echo <<<HERE
<form name="form1" method="post" action="new_post.php">
<p>
<label>Введите название урока<br>
<input type="text" name="title" id="title">
</label>
</p>
<p>
<label>Введите краткое описание урока<br>
<input type="text" name="meta_d" id="meta_d">
</label>
</p>
<p>
<label>Введите ключевые слова для урока<br>
<input type="text" name="meta_k" id="meta_k">
</label>
</p>
<p>
<label>Введите дату добавления урока<br>
<input name="date" type="text" id="date" value="$date">
</label>
</p>
<p>
<label>Ведите краткое описание урока с тэгами абзацев<br>
<textarea name="description" id="description" cols="80" rows="5"></textarea>
</label>
</p>
<p>
<label>Введите полный текст урока с тэгами<br>
<textarea name="text" id="text" cols="80" rows="20"></textarea>
</label>
</p>
<p>
<label>Введите автора урока<br>
<input type="text" name="author" id="author">
</label>
</p>
<p>
<label>Введите где лежит миниатюра<br>
<input type="text" name="img" id="img">
</label>
</p>
<p>
<label>Выберите категорию урока<br>
HERE;
?>
<select name="rub">
<?
$result = mysql_query("SELECT title,id FROM categories WHERE page='1'",$db);
if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел. </p>";
exit(mysql_error());
}
if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_array($result);
do
{
printf ("<option value='%s'>%s</option>",$myrow['id'],$myrow['title']);
}
while ($myrow = mysql_fetch_array($result));
}
else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
$result0 = mysql_query("SELECT id FROM tags",$db);
$count = mysql_num_rows($result0);
?>
</select>
<br><br>
Выберите тег статьи:<br>
<select name="tag" size="<?php echo $count;?>" multiple="multiple">
<?
$result = mysql_query("SELECT tag,id FROM tags",$db);
if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел.</p>";
exit(mysql_error());
}
if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_array($result);
do
{
printf ("<option value='%s'>%s</option>",$myrow['id'],$myrow['tag']);
}
while ($myrow = mysql_fetch_array($result));
}
else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
?>
</select>
</label>
</p>
<p>
<label>
<input type="submit" name="submit_s" id="submit_s" value="Занести заметку в базу">
</label>
</p>
</form>
<?
}
else{
if (isset($_POST['title']))
{
$title = $_POST['title'];
if ($title == '')
{
unset($title);
}
}
/* Если существует в глобальном массиве $_POST['title'] опр. ячейка, то мы создаем простую переменную из неё. Если переменная пустая, то уничтожаем переменную. */
if (isset($_POST['meta_d'])) {$meta_d = $_POST['meta_d']; if ($meta_d == '') {unset($meta_d);}}
if (isset($_POST['meta_k'])) {$meta_k = $_POST['meta_k']; if ($meta_k == '') {unset($meta_k);}}
if (isset($_POST['date'])) {$date = $_POST['date']; if ($date == '') {unset($date);}}
if (isset($_POST['description'])) {$description = $_POST['description']; if ($description == '') {unset($description);}}
if (isset($_POST['text'])) {$text = $_POST['text']; if ($text == '') {unset($text);}}
if (isset($_POST['author'])) {$author = $_POST['author']; if ($author == '') {unset($author);}}
if (isset($_POST['img'])) {$img = $_POST['img']; if ($img == '') {unset($img);}}
if (isset($_POST['rub'])) {$rub = $_POST['rub']; if ($rub == '') {unset($rub);}}
if (isset($_POST['tag'])) {$tag = $_POST['tag']; if ($tag == '') {unset($tag);}}
if (isset($title) && isset($meta_d) && isset($meta_k) && isset($date) && isset($description) && isset($text) && isset($author) && isset($img) && isset($rub) && isset($tag))
{
/* Здесь пишем что можно заносить информацию в базу */
$result = mysql_query("INSERT INTO data (title,meta_d,meta_k,date,description,text,author,mini_img,rub) VALUES ('$title', '$meta_d','$meta_k','$date','$description','$text','$author','$img','$rub')");
$data_id = mysql_insert_id();
$result2 = mysql_query("INSERT INTO posts_tags (tagid,dataid) VALUES ('$tag','$data_id')",$db);
if ($result == 'true') {echo "<p>Ваша заметка успешно добалена!</p>";}
else {echo "<p>Ваша заметка не добалена!</p>";}
}
else
{
echo "<p>Вы ввели не всю информацию, поэтому заметка в базу не может быть добалена.</p>";
}
}
?>
</td>
<?php include("block/right_td.php");?>
</tr>
</table></td>
</tr>
<tr>
<?php include("block/footer.php");?>
</tr>
</table>
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: uvajs
(26.09.2010 в 19:08)
| | А обработчик показать? | |
|
|
|
|
|
|
|
для: neadekvat
(26.09.2010 в 14:00)
| | сделал список с помощью select. вот теперь кроме одного, больше выбирать не могу тэгов, т.е. выбираю админке, но в базу добавляется почему то только один тэг. в чем может быть причина подскажите?
если изменю список на checkbox будет изменение?
Выберите тег статьи:<br>
<select name="tag" size="<?php echo $count;?>" multiple="multiple">
<?
$result = mysql_query("SELECT tag,id FROM tags",$db);
if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел.</p>";
exit(mysql_error());
}
if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_array($result);
do
{
printf ("<option value='%s'>%s</option>",$myrow['id'],$myrow['tag']);
}
while ($myrow = mysql_fetch_array($result));
}
else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
?>
</select>
|
| |
|
|
|
|
|
|
|
для: uvajs
(26.09.2010 в 13:22)
| | > чтобы добавить сразу тэг к статье, мне нужен его id, а его пока не знаем пока не добавим заметку в базу.
Тогда и майа твайа нипанимать.
Есть селекты, в них есть value, где value - id конкретного тэга.
Нажимаем "добавить заметку", и обработчик сначала добавляет заметку, а потом уже по имеющемуся id заметки добавляет тэги, переданные в списке. | |
|
|
|
|
|
|
|
для: neadekvat
(26.09.2010 в 13:07)
| | >Добавить в список пункт "новый", при выборе которого появляется поле input (type=text) для ввода этого нового тэга. Затем он при обработки статьи добавляется в бд, запрашивается его id и собстно этот полученный id заносится в таблицу с тэгами к данной записи.
у меня тэги уже есть, добавлять тэги больше не нужно. а нужно чтобы можно было выбрать тэг из списка | |
|
|
|
|
|
|
|
для: uvajs
(25.09.2010 в 16:51)
| | Добавить в список пункт "новый", при выборе которого появляется поле input (type=text) для ввода этого нового тэга. Затем он при обработки статьи добавляется в бд, запрашивается его id и собстно этот полученный id заносится в таблицу с тэгами к данной записи. | |
|
|
|
|