Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1 / 1 / 1
Регистрация: 09.12.2015
Сообщений: 70
1

Обновление страницы

06.02.2017, 17:36. Показов 1150. Ответов 3

Author24 — интернет-сервис помощи студентам
Пытаюсь сделать страничку с возможностью добавления и удаления видео. Всё успешно работает, вот только страничка после добавления/удаления обновляется 2 раза: 1 раз при выполнении sql запроса, 2 раз вручную, чтобы загрузить страницу с запросом, который учтёт изменения.
Подскажите, как же мне убрать этот ужас с двойным обновлением?

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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<?php
session_start(); -----------------тут шапка----------------
print <<<   html
<span style="color: white; font-size: 2em; text-shadow: black 0 0 25px"><font face="Monotype Corsiva">
<h1 size="10" align="center">Видеоуроки</h1></font> </span>
<font face="Book Antiqua">
<body vlink="#262626  " link="#121212 " alink="#303030">
<table width="100%" border="1" >
<tr> 
    <td align="center"><a href="title.php">Главная</a></td> 
    <td align="center"><a href="news.php">Новости</a></td> 
    <td align="center"><a href="foto.php">Наши фото</a></td> 
    <td align="center"><a href="gb.php">Гостевая книга</a></td>
    <td align="center"><a href=#>Расписание занятий</a></td> 
    <td align="center"><a href=#>Запись на занятия</a></td> 
    <td align="center"><a href="nastroy.php">Настройка гитары</a></td>
    <td align="center"><a href="autors.php">Авторы и исполнители</a></td> 
    <td align="center"><a href=#>Песенник</a></td> 
    <td align="center"><a href=#>Гитарный ликбез</a></td> 
    <td align="center"><a href=#>Наше видео</a></td> 
    <td align="center"><a href=#>Расписание фестивалей</a></td>
</table>
<br>
html;
----------------------заполнение страницы--------------------------
include "config.php";
$db = mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db ($db_name) or die ("Не могу подключиться к базе данных");
mysql_query('SET character_set_database = utf8'); 
mysql_query ("SET NAMES 'utf8'");
 
$count_columns = 2;
echo "<table width='100%' cellspacing='0' cellpadding='0'>
<tr><td align='center'>";
$fot = "SELECT id,name,video FROM video_lessons ORDER BY id";
 $res = mysql_query($fot);
$i = $count_columns;
while( $r = mysql_fetch_array($res) ) 
{  
    $id=$r["id"];
    $name=$r["name"];
    $video=$r["video"];
    echo "<b>$name $id</b><br>";
    $url = $video;
    $parsed_url = parse_url($url);
    parse_str($parsed_url['query'], $parsed_query);
    echo '<iframe src="http://www.youtube.com/embed/'.$parsed_query['v'].'" type="text/html" width="530" height="300" frameborder="0"></iframe>';
 
    $Dostup=array("admin","moderator");
    if(isset($_SESSION['status']) && in_array($_SESSION['status'],$Dostup))
    {
    echo "
        <form name='delete video' method='post' action='videos.php'>
        <input name='$id' type='submit' value='Удалить видео'>
        <INPUT TYPE='HIDDEN' NAME='delid' VALUE='$id'>
        </form>
        ";
    }
    $i++;
    if ( $i % $count_columns == 0 ) 
        {
        // новая строка в таблице
        echo "</td></tr><tr><td align='center'>";
        }
        else 
        {
        // следующая колонка
        echo "</td><td align='center'>";
        }
}
 
echo "</td></tr></table>";
mysql_close($db);   
----------------------обновление в случае удаления----------------------
include "config.php";
$db = mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db ($db_name) or die ("Не могу подключиться к базе данных");
mysql_query("SET NAMES 'utf-8'");
$delid = intval($_POST['delid']);
$delquery = "DELETE FROM `video_lessons` WHERE `id`=$delid";
if ($delid!='0')
{
mysql_query($delquery) or die(mysql_error());
 
echo "$delquery";
echo "Видео удалено!";
echo '<meta http-equiv="refresh" content="0;">';
}
mysql_close($db);
    
?>
-------------оформление страницы-------------------
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
    <title>Видеоуроки</title>
<style type="text/css">
body {
background: black;
background-image: url(guitar_close-up_house_80963_3840x2160.jpg);
background-size: cover;
background-attachment: fixed;
}   
table {
background: black;
background-image: url(guitar_close-up_house_80963_3840x2161.jpg);
background-size: cover;
background-attachment: fixed;
}
    
</style>
</head>
 
<?
$Dostup=array("admin","moderator");
 
if(isset($_SESSION['status']) && in_array($_SESSION['status'],$Dostup))
{
    print <<<   html----------------добавление видео----------------
<form name="post video" method="post" action="videos.php" align="center">
<b>Добавить новый урок</b><br>
<table align='center'>
<tr>
<td align='right'>Название урока:</td><td> <input name="addname" type="text" size="50"></td>
<tr>
<td align='right'>Добавить видео по ссылке с youtube:</td><td> <input name="addlink" type="text" size="50"></td>
<tr>
<th colspan='2'><input name="submit" type="submit" value="Добавить"></th>
</form>
</font>
</body>
html;
}
-----------------------действие при добавлении---------------------
include "config.php";
$db = mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db ($db_name) or die ("Не могу подключиться к базе данных");
mysql_query('SET character_set_database = utf8'); 
mysql_query ("SET NAMES 'utf8'");
if ($_POST['addlink']!='')
{
$addquery = "INSERT INTO video_lessons(name,video)
VALUES('".$_POST['addname']."','".$_POST['addlink']."')";
echo "$addquery";
mysql_query($addquery);
echo '<meta http-equiv="refresh" content="0;">';
}
mysql_close($db);
?>
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.02.2017, 17:36
Ответы с готовыми решениями:

Обновление страницы
Есть скрипт: &lt;?php $r=mysql_query(&quot;SELECT...

Двойное обновление страницы
Здравствуйте. Подскажите, пожалуйста. Из-за каких ошибок может возникать такое явление - как...

Обновление страницы с фреймами
Возможно ли в index.html , который является описанием фреймов, указать какую страницу открыть в...

Обновление элемента страницы.
Добрый день. Существует страница, на ней рисунок, который генерируется РНР. В параметрах этой...

3
142 / 142 / 63
Регистрация: 18.07.2014
Сообщений: 473
06.02.2017, 19:13 2
Лучший ответ Сообщение было отмечено Utacoma как решение

Решение

Вам нужно код вывода данных на страницу поставить ниже кода удаления/добавления и тогда после действия вывод будет уже с изменениями
1
Эксперт PHP
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
06.02.2017, 19:31 3
Цитата Сообщение от Utacoma Посмотреть сообщение
HTML5
1
</table>
+ к выше сказанному не закрыт тэг tr. Да и вообще такое количество HTML лучше не выводить через PHP - паршивенько смотрится.
1
1 / 1 / 1
Регистрация: 09.12.2015
Сообщений: 70
06.02.2017, 19:52  [ТС] 4
Спасибо! Всё оказалось проще, чем я думала
+ в будущем поправлю оформление, вижу, что криво
0
06.02.2017, 19:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.02.2017, 19:52
Помогаю со студенческими работами здесь

Обновление страницы php
В общем нужно что бы страница обновлялась каждые 4 секунды, сначала я делал так: echo '&lt;meta...

Автоматическое обновление страницы
Народ что то гуглил и не нашел прямого ответа на вопрос. Есть ли стандартная функция в php что бы...

Обновление страницы при action
&lt;?php session_start();// вся процедура работает на сессиях. Именно в ней хранятся данные...

Обновление страницы после добавления
Здравствуйте. Подскажите, как сделать чтобы после добавления в форму, страница автоматически...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru