0

我看到有一个问题:PHP Pass variable to next page

但这对我不起作用。

例如,我想将 $variable 解析为另一个 php 文件,并且它必须位于 href 属性中。

我有一个“while”,当用户单击链接时,我必须将当前值存储在一个变量中以将其解析到另一个文件。

我已经尝试过使用会话变量,但就我而言,我有一个包含很多行的查询,并且我有一个放置数据的变量。因此,对于每一行,用户都会看到一个链接。当他点击时,我必须将变量解析为另一个 php 文件。

以防万一,我把代码留在这里

 <div class="container">
  <!-- Obtengo datos -->
    <?php 
  $conexion=mysql_connect('localhost','root','root') or die('No hay conexión a la base de datos');
    $db=mysql_select_db('carpe',$conexion)or die('no existe la base de datos.');

    $id= $_SESSION['id'];



$consulta=mysql_query("select * from(select * from messages m where 1> (select count(*) from messages m1 where m.id<m1.id and m.idm=m1.idm))c
    where id_from='".$id."' or id_to='".$id."'");
    while($filas=mysql_fetch_array($consulta)){
        $idm=$filas['idm'];
        $id=$filas['id'];
        $id_to=$filas['id_to'];
        $id_from=$filas['id_from'];
        $status=$filas['status'];
        $text=$filas['text'];
        $time=$filas['time'];


    $consulta2=mysql_query("select * from users where id='".$id_from."'");
    while($filas2=mysql_fetch_array($consulta2)){
        $Nombre_enviador=$filas2['username'];
    }


    $consulta3=mysql_query("select * from users where id='".$id_to."'");
    while($filas3=mysql_fetch_array($consulta3)){
        $Nombre_receptor=$filas3['username'];
    }

    $username= $_SESSION['username'];   



    $_SESSION['idm'] = $idm;
    echo "mensaje id: ".$idm;   




    ?>
            <div class="maincontent">
            <h3><a href="#">Asunto: <?php echo $idm?></a></h3>
            <span class="postInfo">Enviado por: 
            <?php
            if($Nombre_enviador==$username){
                ?> <a href="#">Ti</a>
            <?php
            }else{
            ?><a href="#"><?php echo $Nombre_enviador ?></a>
            <?php } ?>
             A 
             <?php
             if($Nombre_receptor==$username){
                ?> <a href="#">Ti</a>
                <?php
            }else{
            ?><a href="#"><?php echo $Nombre_receptor ?></a>
            <?php } ?>               
              - <?php echo $time ?></span>
            <p><?php echo $text ?></p>

            <a class="more" href="conversacion.php?a=register">Responder</a>

            <?php
             if(isset($_GET['a']) /*you can validate the link here*/){
                $_SESSION['link']=$_GET['a'];
            }
            ?>



            <hr>
            <?php } ?>
            <hr>
        </div>

希望您能理解,万分感谢!

4

1 回答 1

0

根据您的代码和您的问题,我不能 100% 确定您要做什么,但我确实注意到的一件似乎是一个很好的 segway:

<a class="more" href="conversacion.php?a=register">Responder</a>

<?php
if(isset($_GET['a']) /*you can validate the link here*/){
    $_SESSION['link']=$_GET['a'];
}
?>

上面的代码创建了一个超链接,其目的地为conversacion.php. 此外,您的链接还提供了一条附加信息,在这种情况下,它是一个标a有 值的变量register。您在该链接下方的 PHP 代码尝试检查您是否提供了一个 GET 方法变量,该变量基于您的链接,这将是变量a。Using$_GET将尝试访问已通过 GET 方法传递给当前 URL 的任何变量,在这种情况下,就像附加查询字符串一样简单。

我不希望这个答案能完全解决您的问题,因为坦率地说,我不太确定问题是什么,因为您提供的代码应该能够处理您的请求(至少是适当应用的技术方面)。希望以上上下文应该有所帮助。

于 2013-01-02T20:33:05.973 回答