Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
26 / 23 / 9
Регистрация: 12.08.2011
Сообщений: 576

теоретический вопрос

02.10.2011, 15:18. Показов 954. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть таблица с новостями и есть таблица с фотографиями
как лучше сделать так чтоб к каждой новости добавлялись фотографии
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.10.2011, 15:18
Ответы с готовыми решениями:

Нужен Теоретический совет
Добрый день, натолкните на мысль в какую сторону повернуться. Нужно организовать хранение и чистку временных картинок на сервере. А именно,...

Теоретический вопрос
Является ли правильной константа: "false" ? Если да, то какого она типа?

Теоретический вопрос
Прошу прощения, вероятно разделом ошибся. Дали мне вопросы для самостоятельного изучения. Через несколько дней будут опрашивать....

2
26 / 23 / 9
Регистрация: 12.08.2011
Сообщений: 576
03.10.2011, 22:05  [ТС]
Лучший ответ Сообщение было отмечено little_dita как решение

Решение

подскажите пожайлуста
если кто нибудь не понял то вот как надо

есть таблица с новостями и надо к каждой новости сделать фотоальбом как это организовать подскажите

Добавлено через 31 минуту
решила сделать так
в таблице image создала строку news_id (в нее будет вписываться ид новость)
вопрос такой есть форма
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
function del(id)
{
    if(confirm("Вы действительно хотите удалить запись?"))
        document.location.replace("/adminka/doc/index.php?act=del&id=" + id);
}
</script>
<body>
<form action="<?=$_SERVER['SCRIPT_NAME']?>" method="POST" enctype="multipart/form-data">
<input type="file" name="file"><br>
<input type="submit" name="doUpload" value="Закачать новую фотографию">
<hr>
</form>
<?php
 
include "../config.php";
$db = 'image';
 
// Определяем массив GET
$act = (isset($_GET['act'])) ? htmlspecialchars($_GET['act']) : "";
// можно как тип string установить еще
// то же самое и для id только с типом (int)
 
function delete($id, $dbTable)
{
    $q = "SELECT url FROM $dbTable WHERE id = '%d'";
// echo $q;
    $query = sprintf($q, mysql_real_escape_string($id));
 
    if ($res = mysql_query($query))
    {
        $row = mysql_fetch_assoc($res);
        @unlink($row['url']);
    }
 
    $t = "DELETE FROM $dbTable WHERE id = '%d'";
    $query = sprintf($t, mysql_real_escape_string($id));
    $result = mysql_query($query);
 
    if(!$result)
       die ('Не удалось удалить запись!' . mysql_error());
    
    return true;
}
 
 
// Здесь добавляем
$imgDir = "img";
@mkdir($imgDir, 0777);
if (@$_REQUEST['doUpload']) {
   $data = $_FILES['file'];
   $tmp = $data['tmp_name'];       
 
   if (@file_exists($tmp)) {
      $info = @getimagesize($_FILES['file']['tmp_name']);
      if (preg_match('{image/(.*)}is', $info['mime'], $p)) {
         $name = "$imgDir/".time().".".$p[1];
         move_uploaded_file($tmp,$name);
         $url = $name;
         $result = mysql_query("INSERT INTO image (id,url) VALUES ('$id','$url')");
      } else { 
         echo "<h2>Попытка добавить файл недопустимого формата</h2>";
   }
} else {
    echo "<h2>Ошибка закачки #{$data['error']}</h2>";      
}
}
 
// Здесь выводим все записи из таблицы для построения списка
$query = 'SELECT `id`, `url` FROM `image`';
$res = mysql_query($query);
if(!$res)  die ('Не удалось получить список записей!    ' . mysql_error());
?>
<table>
<?php
if (mysql_num_rows($res) != 0)
{
   while ($row = mysql_fetch_array($res))
   {
?>
<tr>
  <td>
    <img src="<?=$row['url']?>"  alt="Добавлена <?=date("d.m.Y H:i:s", $row['time'])?>">
  </td>
  <td><a href='javascript: del(<?= $row['id']; ?>)'>Удалить</a></td>
</tr>
<?php
   }
 
}
?>
</table>
<?php
if (($act) && ($act == 'del'))
{
      // сюда подставляешь id текущей записи и название таблицы
     $id_img = (int)$_GET['id'];
delete($id_img, $db);
 
     // перекидываем/перзагружаем на нашу же страницу
     header("Location: /adminka/doc/index.php");
     exit();
}
?>
как сделать так чтоб радом с каждой новостью была ссылка на добавление фотографий(это то понятно), но как сделать чтоб при нажатии на нее во все добавленные фото записывался id выбранный новости
вот форма
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?php
  
  Error_Reporting(E_ALL & ~E_NOTICE); 
 
  // Устанавливаем соединение с базой данных
  require_once("../config.php");
 
 
  // Проверяем параметр page, предотвращая SQL-инъекцию
  if(!preg_match("|^[\d]*$|",$_POST['page'])) puterror("Ошибка при обращении к блоку новостей");
  // Проверяем переменную $page, равную порядковому номеру первой новости на странице
  $page = $_GET['page'];
  if(empty($page)) $page = 1;
  $begin = ($page - 1)*$all_number_news;
 
  // Воспроизводим новости, таким образом, как они выглядят на 
  // главной странице, но отображаем так же невидимые новости
  $query = "SELECT id_news,
                   name,
                   body,
                   DATE_FORMAT(putdate,'%d.%m.%Y') as putdate_format,
                   url,
                   url_text,
                   url_pict,
                   hide
            FROM news
            ORDER BY putdate DESC 
            LIMIT $begin, $all_number_news";
  $new = mysql_query($query);
  if ($new)
  {
    // Выводим ссылки управления новостями, добавление, удаление и редактирование
    ?>
<table cellpadding="0" cellspacing="0" border="0" >
        <tr>
        <?php
    echo "<td class=boxmenu><a class=menu href=addnewsform_news.php?start=$start title='Добавить новую новость на сайт' >Добавить новость</a></td>";
    ?>
    </tr>
    </table><br>
    <table width=100% class=bodytable border=1 align=center cellpadding=5 cellspacing=0 bordercolorlight=gray bordercolordark=white>
      <tr class=tableheadercat align="center">
        <td width=120><p class=zagtable>Дата</p></td>
        <td width=60%><p class=zagtable>Новость</p></td>
        <td width=40><p class=zagtable><nobr>Избр-е</nobr></p></td>
        <td colspan=3><p class=zagtable>Действия</p></td>
      </tr>
    <?php
    while($news = mysql_fetch_array($new))
    {
    
      $colorrow = "";
      if($news['hide']=='show') $showhide = "<p><a href=hide_news.php?id_news=".$news['id_news']."&start=$start title='Скрыть новость в блоке новостей'>Скрыть</a>";
      else  {
        $showhide = "<p><a href=show_news.php?id_news=".$news['id_news']."&start=$start title='Отобразить новость в блоке новостей'>Отобразить</a>";
        $colorrow = "class='hiddenrow'";
      }
      // Проверяем наличие изображения
      if ($news['url_pict'] != '' && $news['url_pict'] != '-') $url_pict="<b><a href=../".$news['url_pict'].">есть</a></b>";
      else $url_pict="нет";
      
      if (($news['url']!='-') and ($news['url']!='')) $news_url="<br><b>Ссылка:</b> <a href='".$news['url']."'>".$news['url_text']."</a>";
      else $news_url="";
      // Выводим новость
      echo "<tr $colorrow >
              <td><p class=help align=center>".$news['putdate_format']."</p></td>
              <td><p><a title='Редактировать текст новости' href=editnewsform_news.php?id_news=".$news['id_news']."&start=$start>".$news['name']."</a><br>".nl2br($news['body'])." ". $news_url." </td>
              <td><p>".$url_pict."</p></td>
              <td align=center>".$showhide."</td>
              <td align=center><p><a href=delnews_news.php?start=$start&id_news=".$news['id_news']." title='Удалить новость'>Удалить</a></td>
              <td align=center><p><a href=editnewsform_news.php?start=$start&id_news=".$news['id_news']." title='Редактировать текст новости'>Исправить</a></td>
            </tr>";
    }
    echo "</table>";
  }
  else puterror("Ошибка при обращении к блоку новостей");
 
include "../footer.php";  
 
?>
Добавлено через 2 часа 24 минуты
тема закрыта я ее перенесла в раздел для начинающих
все спасибо за помощь

Добавлено через 2 часа 29 минут
если не сложно помогите с этим
фотоальбом
0
04.10.2011, 00:12

Не по теме:


а не проще в таблицу с новостями добавить поле image_url и туда писать url фотографии

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.10.2011, 00:12
Помогаю со студенческими работами здесь

Теоретический вопрос
Доброго времени суток составил список вопросов не очень понятных объясните пожалуйста кто знает 1. Группа 2. Кольцо 3. Область...

Теоретический вопрос.
допустим у меня есть функция Func(short X, short Y) { short Rez=0; Rez = X*Y; } Вопрос, правильнее ли переменную...

Чисто теоретический вопрос
А как разогнать контроллер? Хотя бы до частоты, означенной максимальной в даташите? Например, у меги 162 написано максимум 16MHz, при этом...

Теоретический вопрос по быстродействию
Теоретический вопрос, по быстродействию, когда пишешь запрос на SQL результаты которого используешь в странице, лучше писать один...

Скорее теоретический вопрос
Здравствуйте! я написала программу,которая работает с длинууующими числами. но важна не только корректная работа, но и скорость подсчета....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru