Включить только var из одного файла php в другой

0

У меня есть одна переменная в url.php. Я хочу получить к нему доступ в нескольких других файлах. Я попытался включить url.php во все эти файлы. Но есть одна проблема.

<?php
 include 'url.php';   //include url.php
 echo "My id is : $myid";
?>
<!DOCTYPE html>
<html>
<head>

<!-- AddThis Smart Layers END -->
</head>
//somecontent
<body>

url.php имеет html-код, включая кнопки, div и т.д. Все они включаются, когда я включаю url.php.

Как включить только переменную php и пропустить другой html-код из url.php.

url.php выглядит так:

<?php
$myid=$_POST['myid'];
echo "myID is : <br>";
echo $myid;
?>
<html>
   <head>
    <html xmlns:fb="http://ogp.me/ns/fb#">
     </head>
  //some othe html stuff
</html>
  • 0
    @subzero: я не мог удалить это. Содержит интерфейс моего сайта!
  • 0
    Мне очень нравится магия комментирования: include 'url.php'; //include url.php
Теги:

4 ответа

1
You can put some condition there like isset().
<?php
 if(isset($_POST['myid']))
  {
   $myid=$_POST['myid'];
   echo "myID is : <br>";
   echo $myid;
  }
 else{
?>
 <html>
  <head>
   <html xmlns:fb="http://ogp.me/ns/fb#">
  </head>
    //some othe html stuff
 </html>
 <?php } ?>
  • 0
    даже после этого, если я включу приведенный выше код, он будет включать в себя HTML.
  • 0
    если переменная $ _POST ['myid'] не установлена, то она будет включать html. Вы можете изменить включить условие. Вы получаете переменную $ _POST ['myid'] на каждой странице?
1

Другое решение - вы можете сохранить переменную в сеансе, а затем вы также можете получить значение на других страницах.

url.php

<?php
$myid=$_POST['myid'];
session_start();
$_SESSION['my_id']=$myid;
?>

Вы можете использовать переменную как это. useMyId.php ''

<?
session_start();
$var=$_SESSION['my_id'];

echo "Here is the variable".$var;
?>
  • 0
    Интеллектуальный ответ. Но на моей странице есть одна уже продолжающаяся сессия, которая начинается с session_start(); , Есть ли вероятность столкновения? что-нибудь вроде session1 и session2, чтобы начать отдельно?
  • 0
    Если сессия уже началась на странице, нет необходимости добавлять session_start (); Но убедитесь, что сессия должна начаться до присвоения $ _SESSION ['my_id'] = $ myid; и $ var = $ _ SESSION ['my_id'];
Показать ещё 1 комментарий
0

Ты не сможешь это сделать. Единственный способ - удалить HTML и включить его в другое место. Вызов для включения - это открытие файла, а затем выполнение eval на контенте. Если он содержит жизненно важные части пользовательского интерфейса вашего сайта, вы должны пересмотреть свой шаблон дизайна.

0

вы можете объявить переменную в каждом файле php, прежде чем включать url.php.
как это:
$uservar = 1;

то в url.php поместите html-блок в оператор if

if($usevar != 1){
HTML-BlOCK
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню