2015-06-17 77 views
-2

我想从一个URL获得一个值,它不工作。这里是代码:

<?php 
if (isset($_GET['pag'])) { 
    $sel_continut = $_GET['pag']; 
} else { 
    $sel_continut = "no value sent"; 
} 

echo "<a href=\"continut.php?pag=" . $informatie_tabel['nume_meniu'] . "\">" . $denumire_pagina . "</a> <br />"; 

有人可以帮助我了解我做错了什么吗?

+0

定义“不工作”。你期望这个代码做什么?它实际上做了什么? – David

+0

我期待从“pag =”获得价值,现在我得到“没有价值发送”;这意味着“pag”没有设置,但它在URL中是正确的? –

+0

加载页面时设置的值是多少?我想我也应该问一个明显的问题......你没有试图在提供查询字符串值*之前*是你? – David

回答

0

在回答您的评论...

这是用来加载页面的URL:

http://localhost/extragere_din_baza_de_date.php 

注意,有没有查询字符串值。所以这段代码:

$_GET['pag'] 

不会找到任何东西。该值从未设置。所以你的代码总是要输入else的条件。您以后创建一个查询字符串值的链接:

http://localhost/continut.php?pag=Home 

但是,这对于一个完全不同的页面甚至还没有被请求尚未。如果您在continut.php页面的代码上参考$_GET['pag'],则会看到该值。

我想说的是...在发送之前,您无法读取查询字符串值。好消息是你不需要需要来读取这个值。由于您在设置的的链接上的值相同,那么显然你的已经有这个值。在这里:

$informatie_tabel['nume_meniu'] 
+0

我明白所以我已经用'extragere_din_baza_de_date.php'修改了'continut.php',我明白当我访问链接'http:// localhost/extragere_din_baza_de_date.php'时,它会得到else语句,但是当我点击该页面中的链接和现在的链接是'http:// localhost/extragere_din_baza_de_date?pag = Home'这是说'找不到 在此服务器上找不到请求的URL/extragere_din_baza_de_date。 Apache/2.4.9(Win64)PHP/5.5.12服务器在本地主机端口80' –

+0

@SilviuAntohe:它看起来像链接缺少文件名中的'.php'。链接必须指向一个实际的页面,而不仅仅是与页面相似的东西。 – David

+0

我忘了'.php' :)再次感谢您对我有耐心。 –