1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Passar variável Javascript para PHP

Discussão em 'Web Development' iniciada por eXcept, 24 de Fevereiro de 2007. (Respostas: 6; Visualizações: 14593)

  1. eXcept

    eXcept Power Member

    Viva.

    Tenho um script em Javascript cuja função é ir buscar-me o username do Windows. Está testada e a funcionar.

    No entanto, preciso de passar essa variável que ele me retorna para o PHP que está na mesma página.

    Alguém me pode dar umas dicas de como o fazer?
     
  2. eXcept

    eXcept Power Member

    Código até ao momento

    PHP:
    <?
    session_start();
    include 
    'config.php';
    $connection = @mysql_connect($hostname$user$pass)
    or die(
    mysql_error());
    $dbs = @mysql_select_db($database$connection) or
    die(
    "erro de ligação à db" mysql_error());

    if(isset(
    $_POST['username'])) {
    $username $_POST['username'];
    $logado mysql_num_rows(mysql_query("select * from users where username like '%$username%'"));
    $log mysql_fetch_array(mysql_query("select * from users where username like '%$username%'"));
    print_r($log);
    //var_dump($username);
    echo $_POST['username'];
    echo 
    '<p>';
    if (
    $logado == "1" )
    {
        echo 
    "ola ";
    }
    else { echo 
    "muaaa mete aki erro"; }

    }

    else {    

    ?>
    <head>
    <title>teste</title>
    </head><body>
    <script>
    function lala(){
    var strUsername;
    var objNetwork;
    var wshshell=new ActiveXObject("wscript.shell");
    var usernames=wshshell.ExpandEnvironmentStrings("%username%");

    return usernames;
    }
    </script>

    <body onload="document.forms[0].submit()">

    <form name="ulele" method=post>

    <input type="hidden" name="username" value="javascript:lala(); return true;">
    <input type="submit">

    </form>


    <p align="center">
    <img border="0" src="img/logo.jpg"<p>
    </body>

    <?php
    }

    ?>
     
  3. OldMan

    OldMan Power Member

    nao da para meteres numa caixa de texto invisivel o valor da var vinda por js e depois por php vais la buscala?
     
  4. eXcept

    eXcept Power Member

    isso foi o que tentei fazer em cima, mas não me está a funcionar. A página entra-me sempre me loop.
     
  5. OldMan

    OldMan Power Member

    lamento, mas eu de php sei 0 (sei um bocadinho va, mas e' como se nao soubesse).

    mas para que tens o submit? pelo que eu tava a pensar nao era preciso... e no form nao tens nenhum action.

    http://www.thescripts.com/forum/thread147649.html
    nao sei se ja tinhas visto ou nao, mas tem algo sobre isso que queres fazer.
    a conclusao do gajo foi usar cookies, mas ha maneira de fazer isso por js? (sinceramente desconheco)

    ja tentaste tipo isto?:

    *vais la buscar o nome do user por js*
    window.location="pagina.php?user=VAR"

    depois podes perfeitamente ir buscar a querystring para php, o unico senao neste metodo e' que fica visivel, pelo form nao ficava tao exposto... ve se isso tem problema para ti ou nao
     
  6. K0mA

    K0mA Power Member

    Se javascript:lala(); contiver document.write(user) tem de dar.
     
  7. eXcept

    eXcept Power Member

    Já bule

    Código correcto, FYI

    PHP:
    <?
    session_start();
    include 
    'config.php';
    $connection = @mysql_connect($hostname$user$pass)
    or die(
    mysql_error());
    $dbs = @mysql_select_db($database$connection) or
    die(
    "erro de mysql - " mysql_error());
    ?>
    <head>
    <title>Gestão de Horas</title>
    </head><body>
    <script>
    function lala(){
    var strUsername;
    var objNetwork;
    var wshshell=new ActiveXObject("wscript.shell");
    var usernames=wshshell.ExpandEnvironmentStrings("%username%");
    return usernames;
    }
    </script>
    <p align="center">
    <body bgcolor="#C0C0C0">
    <img border="0" src="img/logo.jpg"<p>
    </body>
    <?
    if(!isset( $_GET['usernames'] ) ) {
     echo "<script language=\"javascript\">";
     echo "var nhec = lala();";
     echo "document.location='?usernames=' + nhec;";
     echo "</script>";
    }
    else { 

    $username = $_GET['usernames'];
    echo $username;



    ?>
     

Partilhar esta Página