Problemi con php

« Older   Newer »
 
  Share  
.
  1. J_aX95™
     
    .

    User deleted


    Per essere più precisi ecco sistemato il tutto:
    Salve ragazzi avrei dei problemi con un sito che sto creando. In pratica i problemi consistono nei messaggi e nel reindirizzamento sbagliato. Inizialmente per il reindirizzamento usavo:
    CODICE
    header("location: pagina.php");

    Mentre per i vari messaggi:
    CODICE
    echo "<script>alert('".$msg."');</script>";

    Però quello che ricevevo era:
    - Niente messaggi;
    - L'url rimaneva identico a quello dove era inserita la funzione "header" con il contenuto, tuttavia della pagina impostata nella suddetta funzione.

    Ho provato allora a cambiare metodo, utilizzando solo javascript:
    CODICE
    echo "<script>alert('".$msg."');location.href = '".$web."';</script>";

    Ma peggio di prima, niente messaggi e niente reindirizzamento, neanche il contenuto questa volta.

    Allora ho provato a fare il pezzo in html e javascript ma stessa cosa.. Cosa posso fare? Ora vi mostro come stanno:
    Form della pagina index.html
    CODICE
    <form name="login" method="POST" action="login.php">
                                           <table align="center" width="60%">
                                                   <tr>
                                                           <td colspan="2">
                                                                   <p><font face="Verdana">Username:</font><input type="text" name="username" size="20"></p>
                                                                   <p><font face="Verdana">Password:</font><input type="password" name="password" size="20"></p>
                                                           </td>
                                                   </tr>
                                                   <tr>
                                                           <td width="50%">
                                                                   <input type="submit" data-icon="check" data-corners="false" value="Login" name="B1" data-theme="g">
                                                           </td><td width="50%">
                                                                   <input type="reset" data-icon="delete" data-corners="false" value="Annulla" name="B2" data-theme="f">
                                                           </td>
                                                   </tr>
                                                   <tr>
                                                           <td colspan="2">
                                                                   <p align="center">Se non sei registrato: <a href="#Registrazione">Clicca qui</a></p>
                                                           </td>
                                                   </tr>
                                           </table>
                                   </form>

    Pagina login.php
    CODICE
    <?php
           session_start();
           
           $hostname = "***";
           $nameuser = "***";
           $password = "***";
           $dataname = "***";
           
           $myusername = $_POST['username'];
           $mypassword = $_POST['password'];
           
           $connessione = mysql_connect($hostname, $nameuser, $password);
           $database_select = mysql_select_db($dataname, $connessione);
           $sql = "SELECT * FROM users WHERE username='$myusername' and password='$mypassword'";
           $result = mysql_query($sql);
           $count = mysql_num_rows($result);
           $_SESSION['username'] = $myusername;
           $msg = "";
           $web = "";
           if($count==1){
                   session_register("myusername");
                   session_register("mypassword");

                   if($myusername == 'administrator'){
                           $_SESSION['autorized'] = 2;
                           $web = "pannello_amministrativo.php";
                   }
                   else{
                           $_SESSION['autorized'] = 1;
                           $web = "spedizione.php";
                   }
           }
           else{
                   $_SESSION['autorized'] = 0;
                   $msg = "I dati che hai inserito sono errati.";
                   $web = "index.php";
           }
    ?>

    <html>
           <head>
                   <script language="javascript">
                           function act(){
                                   var msg = '<?php echo($msg); ?>';
                                   if(msg != "")
                                           alert(msg);
                                   var web = '<?php echo($web); ?>';
                                   location.href = web;
                           }
                   </script>
           </head>
           
           <body onload="act()">
           </body>
    </html>


    Cosa posso fare per risolvere tale problema??
     
    Top
    .
  2. walter4991
     
    .

    User deleted


    Ho apportato solo delle piccole modifiche, ma già in principio quando ho provato il tuo codice mi visualizzava correttamente gli alert e il reindirizzamento funzionava alla perfezione.

    login.php
    CODICE
    <?php
          session_start();
         
          $hostname = "localhost";
          $nameuser = "root";
          $password = "";
          $dataname = "prova";
         
          $myusername = $_POST['username'];
          $mypassword = $_POST['password'];
         
          $connessione = mysql_connect($hostname, $nameuser, $password);
          $database_select = mysql_select_db($dataname, $connessione);
          $sql = "SELECT * FROM users WHERE username='$myusername' and password='$mypassword'";
          $result = mysql_query($sql) or die(mysql_error());
          $count = mysql_num_rows($result);
          $_SESSION['username'] = $myusername;
          $msg = "";
          $web = "";
          if($count==1){
                  $_SESSION['myuser'] = $myusername;
                  $_SESSION["mypass"] = $mypassword;

                  if($myusername == 'administrator'){
                          $_SESSION['autorized'] = 2;
                           $msg = "Benvenuto Admin!";
                          $web = "pannello_amministrativo.php";
                  }
                  else{
                          $_SESSION['autorized'] = 1;
                           $msg = "Accesso effettuato correttamente!";
                          $web = "spedizione.php";
                  }
          }
          else{
                  $_SESSION['autorized'] = 0;
                  $msg = "I dati che hai inserito sono errati.";
                  $web = "index.php";
          }
    ?>

    <html>
          <head>
                  <script language="javascript">
                          function act(){
                                  var msg = '<?php echo($msg); ?>';
                                  if(msg != "")
                                          alert(msg);
                                  var web = '<?php echo($web); ?>';
                                  location.href = web;
                          }
                  </script>
          </head>
         
          <body onload="act()">
          </body>
    </html>


    A questo punto credo dipenda dal tuo browser o dal tuo web server. Io ho usato Google Chrome e XAMPP.


    PS Ho reso il tuo codice funzionante non ottimizzato.
     
    Top
    .
  3. J_aX95™
     
    .

    User deleted


    Ho sistemato come dici tu..ma continuo ad avere lo stesso problema... Hai visto l'index? (Io nell'index.php utilizzo jquery mobile non so quanto influisca..)

    Edit: Ho provato ad utilizzare Firefox nel caso fosse Chrome ma niente...

    Edited by J_aX95™ - 14/6/2013, 15:34
     
    Top
    .
  4. walter4991
     
    .

    User deleted


    A me funzionava tutto perfettamente, prova a cambiare browser.
     
    Top
    .
  5. J_aX95™
     
    .

    User deleted


    Utilizzo Chrome io..Ho provato con Firefox ma niente..
     
    Top
    .
  6. walter4991
     
    .

    User deleted


    Provalo su altervista.
     
    Top
    .
  7. J_aX95™
     
    .

    User deleted


    Purtroppo è un dominio già comprato..In sostanza è il sito di mio padre e io gli sto sistemando una parte del sito. Non so precisamente su che server sta..

    PS: Il sito comunque è su un server linux..
     
    Top
    .
  8. walter4991
     
    .

    User deleted


    Puoi postare il link? (naturalmente carica le pagine e postami alcune credenziali per provare.)
     
    Top
    .
  9. J_aX95™
     
    .

    User deleted


    Il link è: www.infoteck.org/SpedyTeck/
    Puoi accorgertene semplicemente digitando un utente a cavolo (quindi credenziali non corrette) per verificare. Se i dati sono incorretti deve darti un messaggio e riportarti nella index.php.
     
    Top
    .
  10. walter4991
     
    .

    User deleted


    Ah ok, ora si presenta il problema. Infatti nemmeno a me visualizza il messaggio e riporta indietro.

    Però inserendo dati errati, vengo reindirizzato sulla pagina login.php che resta bianca, ma se provo a ricaricarla visualizzo l'alert e vengo rimandato alla index. Credo ci sia qualche problema con il jquery...
     
    Top
    .
  11. J_aX95™
     
    .

    User deleted


    XD Si quella cosa me ne sono reso conto ma anche se loggi correttamente restando sempre in login.php e aggiorni da sempre errore e ti porta nella index.php
     
    Top
    .
  12. walter4991
     
    .

    User deleted


    Prova il codice senza jquery.
     
    Top
    .
  13. J_aX95™
     
    .

    User deleted


    -.- E' quello il problema... Ora che faccio?
     
    Top
    .
  14. walter4991
     
    .

    User deleted


    Adatti o cambi il jquery.
     
    Top
    .
  15. J_aX95™
     
    .

    User deleted


    Cioè? Non posso sto facendo in modo che sia anche per smartphone e tablet..
     
    Top
    .
34 replies since 7/6/2013, 11:11   216 views
  Share  
.