2016-11-24 2 views
0

Я пытался создать простой menu.php для своего веб-сервера с двумя кнопками b1 = Войти и b2 = Регистр. Каждый из них будет называть свою отдельную функцию, которая затем сканирует блок id = 'main' и изменяет свой внутренний html на что-то вдоль строк <?php include('testLogIN.php') ?> и <?php include('testRegister.php') ?>. Кнопки стирают внутренний html блока с id = 'main', НО на моем сервере кнопки при нажатии ничего не делают. Я убежден, что это может быть проблемой с тем, как работают вложенные строки, поэтому echo "He said 'haha' and left." не будет правильно печатать He said 'haha' and left.. Я понимаю, что я могу быть повсюду с моим описанием, но, пожалуйста, несите меня.Пытается: функция вызова кнопок, которая заменяет html по id, в <? Php include ("")?>

@charset "UTF-8"; 
 

 
.right{ 
 
\t margin:1%; 
 
\t position:relative; 
 
\t clear:right; 
 
\t float:right; 
 
\t right:15px; 
 
} 
 

 
.left{ 
 
\t margin:1%; 
 
\t position:relative; 
 
    \t clear:left; 
 
\t float:left; 
 
\t left:10px; 
 
} 
 

 
.bleft{ 
 
\t margin:1%; 
 
\t position:relative; 
 
\t float:left; 
 
\t width=15px; 
 
} 
 

 
.fleft{ 
 
\t float:left; 
 
} 
 

 
.mainbox{ 
 
\t margin:2%; 
 
\t width:450px; 
 
\t height:auto; 
 
} 
 

 
.box{ 
 
\t clear:left; 
 
\t float:left; 
 
\t margin:1%; 
 
\t width:280px; 
 
\t height:33px; 
 
} 
 

 
img{ 
 
    \t max-width: 100%; 
 
\t max-height: 100%; 
 
    \t width: auto; 
 
} 
 

 
.stat{ 
 
\t float:right; 
 
\t position:fixed; 
 
\t right:10px; 
 
} 
 

 
.bolded{ 
 
\t border-width: 5px; 
 
\t size:5px; 
 
} 
 

 
h2{ 
 
\t margin-left:2px; 
 
} 
 

 
.white{ 
 
\t color:#DDD; 
 
} 
 

 
.black{ 
 
\t background-color:#333; 
 
} 
 

 
hr{ 
 
\t clear:left; 
 
}
<!DOCTYPE html> 
 
<html> 
 
\t <head> 
 

 
\t \t <title>Main</title> 
 

 
\t \t <link rel="stylesheet" type="text/css" href="mystyle.css"> 
 

 
\t \t <style> 
 
\t \t \t .abs{ 
 
    \t \t \t \t position: absolute; 
 
    \t \t \t \t top: 0; 
 
    \t \t \t \t left: 0; 
 
\t \t \t } 
 
\t \t \t .rel{ 
 
    \t \t \t \t position: relative; 
 
\t \t \t } 
 
\t \t \t a:visited{ 
 
    \t \t \t \t color: green; 
 
\t \t \t } 
 
\t \t \t body{ 
 
    \t \t \t \t margin: 0; 
 
    \t \t \t \t padding: 0; 
 
\t \t \t \t border: 0; 
 
    \t \t \t \t background--image: url("images/dragon.jpg"); 
 
\t \t \t \t background-size: cover; 
 
\t \t \t } 
 
\t \t </style> 
 
\t \t 
 
\t </head> 
 
\t <body> 
 

 
\t \t <div class="rel"> 
 
\t \t \t <img src="images/dragon.jpg"> 
 
\t \t \t 
 
\t \t \t <div id='main' class="mainbox black abs"> 
 
\t \t \t \t <button onclick='tologin()'>Log in</button> 
 
\t \t \t \t <button onclick='toregister()'>Register</button> 
 
\t \t \t </div> 
 
\t \t </div> 
 

 
\t </body> 
 
</html> 
 

 
<script> 
 
function tologin(){ 
 
    document.getElementById("main").innerHTML ="<?php include('unistuff/LogIN/login.php');?>"; 
 
} 
 
function toregister(){ 
 
    document.getElementById("main").innerHTML ="<?php include('unistuff/LogIN/toregister.php');?>"; 
 
} 
 
</script>

+0

PHP-код может быть выполнен только на сервере. Изменение 'innerHTML' будет только изменять HTML (событие на стороне клиента). Вероятно, вам нужно отправить запрос на сервер после нажатия кнопки «Вход», и сервер создаст вам новую страницу. – d4nyll

ответ

0

Поскольку PHP игнорировать сценарии (он будет включать в себя как файл без поддавшись JavaScript), я предлагаю вам посмотреть в Loading file with javascript

Или вы можете использовать метод загрузки JQuery (Dont нагрузки PHP-файл):

<script> 
    function tologin(){ 
     $("#main").load('login.html'); 
    } 
    function toregister(){ 
     $("#main").load('register.html'); 
    } 
</script> 

ЕСЛИ обязательно PHP, то вы можете использовать Ajax

+0

быть честным, что вы не прочитали весь ответ? даже если вы можете увидеть (загрузка файла с помощью javascript), зачем его повторять. –

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

  • Нет связанных вопросов^_^