2013-04-27 3 views
0

У меня есть страница test.php, в котором у меня есть список имен:изменить переменную с помощью метода GET

name1: 992345 
name2: 332345 
name3: 558645 
name4: 434544 

В другой странице test1.php?id=name2 и результат должен быть:

Я пробовал этот код PHP:

<?php 
libxml_use_internal_errors(true); 
$doc = new DOMDocument(); 
$doc->loadHTMLFile("/test.php"); 
$xpath = new DOMXpath($doc); 
$elements = $xpath->query("//*@".$_GET["id"].""); 
if (!is_null($elements)) { 
foreach ($elements as $element) { 
$nodes = $element->childNodes; 
foreach ($nodes as $node) { 
echo $node->nodeValue. "\n"; 
} 
} 
} 
?> 

мне нужно, чтобы иметь возможность изменить имя с GET метод PHP в test1.pdp?id=name4

Результат должен быть по-другому.

есть другой способ, becose шахта не будет работать?

+0

Вы можете кодировать ваш test1.php как json? – intelis

+0

нет, но mabe это еще один wai, чтобы получить значения с той же страницы, изменив только test1.php? Id = name3 –

ответ

1

Вот еще один способ сделать это.

<?php 
libxml_use_internal_errors(true); 

/* file function reads your text file into an array. */ 
$doc = file("test.php"); 

$id = $_GET["id"]; 

/* Show your array. You can remove this part after you 
* are sure your text file is read correct.*/ 

echo "Seeking id: $id<br>"; 
echo "Elements:<pre>"; 
print_r($doc); 
echo "</pre>"; 

/* this part is searching for the get variable. */ 

if (!is_null($doc)) { 
    foreach ($doc as $line) { 
     if(strpos($line,$id) !== false){ 
      $search = $id.": "; 
      $replace = ''; 
      echo str_replace($search, $replace, $line); 
     } 
    } 
} else { 
    echo "No elements.";  
    } 
?> 
+0

Хорошие ndasusers! – Sumoanand

0

Существует совершенно другой способ сделать это, используя PHP в сочетании с JavaScript (не уверен, что это то, что вам нужно, и если оно может работать с вашим приложением, но я собираюсь написать его). Вы можете изменить свой test.php, чтобы прочитать параметр GET (он также может быть POST, и вы увидите), и в соответствии с этим выведите только желаемое значение, возможно, из ассоциативного массива, в котором вы жестко закодированы. JavaScript-подход будет другим, и он будет включать в себя создание одного вызова AJAX вместо DOM, проходящего через PHP.

Итак, вкратце: вызов AJAX в test.php, который затем выводит желаемое значение на основе параметра GET или POST.

jQuery AJAX here; родной учебник JS here.

Просто дайте мне знать, если это не сработает для вашего приложения, и я удалю свой ответ.

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