2015-01-18 3 views
0

В настоящее время я изучаю html и php, и я сделал этот небольшой проект о «системе уведомлений». Наверное, я должен сначала объяснить это, прежде чем подробно расскажу о своей реальной проблеме.Как я могу установить этот флажок в режиме реального времени?

Моя таблица выглядит следующим образом:

enter image description here

  1. Моя команда первый PHP будет получить значения каждого столбца функции и хранить их в $ а, $ Ь, $ с, $ D и $ е.

  2. Моя вторая команда php будет отображать 5 текстовых полей и отмечать их как проверенные на основе значений $ a, $ b, $ c, $ d и $ e, поэтому на выходе, основанном на моей таблице, будут показаны пять флажков с 1-й, 2-й и 4-й флажки с чеком.

  3. Моя третья команда php собирает значения из флажков, потому что пользователь может захотеть изменить его предпочтительные уведомления. После нажатия кнопки код обновит новые значения текстовых полей.

Ниже приведен код на мой текущий прогресс:

<?php 
mysql_connect('localhost','root','') or die(mysql_error()); 
mysql_select_db('main_database') or die(mysql_error()); 

$fetchchoice=mysql_query("SELECT * FROM notification_table WHERE username='carl'"); 

while($getchoice=mysql_fetch_assoc($fetchchoice)){ 
    $a=$getchoice['feature1'];; 
    $b=$getchoice['feature2']; 
    $c=$getchoice['feature3']; 
    $d=$getchoice['feature4']; 
    $e=$getchoice['feature5']; 
} 
?> 
<html> 
<head> 
</head> 
<body> 
<form method="POST"> 
<?php 
echo 
' 
<input type="hidden" name="choice1" value=""> 
<input type="checkbox" name="choice1" value="checked" '.$a.' > Feature 1 <br> 
<input type="hidden" name="choice2" value=""> 
<input type="checkbox" name="choice2" value="checked" '.$b.' > Feature 2 <br> 
<input type="hidden" name="choice3" value=""> 
<input type="checkbox" name="choice3" value="checked" '.$c.' > Feature 3 <br> 
<input type="hidden" name="choice4" value=""> 
<input type="checkbox" name="choice4" value="checked" '.$d.' > Feature 4 <br> 
<input type="hidden" name="choice5" value=""> 
<input type="checkbox" name="choice5" value="checked" '.$e.' > Feature 5 <br> 
'; 
?> 
<input type="submit" name="submit" value="Submit"> 
</form> 
<?php 
if(isset($_POST['submit'])) 
{ 
$f1choice = $_POST['choice1']; 
$f2choice = $_POST['choice2']; 
$f3choice = $_POST['choice3']; 
$f4choice = $_POST['choice4']; 
$f5choice = $_POST['choice5']; 

echo "1."; 
echo $f1choice; 
echo "<br />"; 
echo "2."; 
echo $f2choice; 
echo "<br />"; 
echo "3."; 
echo $f3choice; 
echo "<br />"; 
echo "4."; 
echo $f4choice; 
echo "<br />"; 
echo "5."; 
echo $f5choice; 

$kweri = "UPDATE `main_database`.`notification_table` SET `feature1` = '".$f1choice."', `feature2` = '".$f2choice."', `feature3` = '".$f3choice."', `feature4` = '".$f4choice."', `feature5` = '".$f5choice."' WHERE `notification_table`.`username` = 'carl'"; 
mysql_query($kweri); 
} 
?> 
</body> 
</html> 

ПРОБЛЕМА

Моя проблема сейчас в том, что я должен обновить страницу, чтобы иметь обновленный флажок, чтобы появиться, так как это было только сделанный на php, у меня нет никакого опыта работы с javascript, но я думаю, что это лучший способ показать мой текущий текстовый файл в реальном времени, однако я не знаю, с чего начать, или если есть другой способ, которым я мог бы показать свой флажок в режиме реального времени.

EXTRA ПРОБЛЕМА (Это что-то делать с моей системой, но не относительно этого кода. Если вы, ребята могли бы взглянуть на эту проблему это будет означать многое.)

Как видно, вы, ребята, таблица выше, было просто для того, чтобы отслеживать, какими предпочтениями пользователя были бы связаны с уведомлениями. Но система не останавливается на достигнутом, мне нужно выяснить, как передавать уведомления после того, как функция была использована. Моя идея состояла в том, что после каждой функции я должен добавить дополнительную команду sql, чтобы добавить то, что произошло в другой таблице. Примером может быть регистрация после того, как команда insert для сохранения данных регистрации будет сохранена, я также вставлял бы это, пользовательский «пример» «зарегистрировал» в «дате» в отдельной таблице, а именно «notif_table». Мои столбцы будут: имя пользователя, действие и дата, поэтому моя страница уведомлений может показать, что «Пользователь» зарегистрирован «18 января 2015 года».

Но опять же, это была моя теория об уведомлениях, и я очень открыт для предложений и исправлений.

+0

Я забыл упомянуть, что я только помещаю эхо выше инструкции UPDATE, чтобы проверить, не получаю ли я правильные значения –

ответ

1

Просто поставьте деталь с if(isset($_POST['submit'])) до вашего выбора.

EXTRA ПРОБЛЕМА:
Просто добавьте столбец в существующую таблицу (например, «создал») и положить now() в него при вставке строки.

+0

Спасибо большое! Это то, что мне нужно. У меня есть вопрос о дополнительной проблеме, хотя это будет достойный способ создания системы уведомлений? Что я просто добавлю дополнительный sql-оператор, чтобы скопировать то, что происходит, когда страница управляет базой данных? У меня были бы какие-то недостатки в долгосрочной перспективе? –

+0

О, и моя следующая идея заключалась бы в том, чтобы добавить «замеченную» функцию, включив тему уведомления в ссылку, и когда вы нажмете на нее, вы увидите все детали по выбранному вами предмету, и это также означало бы эту тему как «читать» на notif_table –

+0

В столбце «созданный» не нужны дополнительные sql-операторы. Он просто заполнен вставкой. Все остальное слишком велико, чтобы обсуждать здесь в комментариях. Откройте для каждой конкретной проблемы другой вопрос, пожалуйста. – hellcode

Смежные вопросы