Pagina 1 di 3 123 UltimoUltimo
Visualizzazione risultati 1 fino 30 di 61
Like Tree3Likes

Discussione: Problema controllo accessi

  1. #1
    Data registrazione
    13-05-2012
    Messaggi
    182

    Unhappy Problema controllo accessi

    Buonasera da un pò di tempo usavo questi script per controllare gli accessi in alcune pagine, ma ora non bloccano più cosa è successo?

    Nella pagina da bloccare
    Codice PHP:
    <?

    session_start
    ();
    if (!isset(
    $_SESSION['utente']) && !isset($_SESSION['username'])){
    header("Location:index2.php");
    die();
    }
    ?>
    Nell' index2.php inizio pagina
    Codice PHP:
    <?
    session_start
    ();
    ?>


    <?
    function check($user,$password){
    include(
    "utenti2.php");

    foreach(
    $utenti as $user_ => $password_){
    if ((
    $user==$user_) AND ($password==$password_)) {
    return
    true;
    }
    }

    return
    false;
    }

    function
    form_login(){
    ?>
    Nell' index2.php fine pagina
    Codice PHP:

    <? }
    if(isset(
    $_POST["utente"])){
    if (
    check($_POST["utente"],$_POST["password"])){
    $_SESSION["utente"] = $_POST["utente"];
    $_SESSION["password"] = $_POST["password"];

    if (
    $_POST["txt_captcha"] == $_SESSION["session_captchaText"])
    {
    header("Location: areariservata.php");
    }
    else
    {
    form_login();
    }
    }else{
    form_login();
    }
    }else{
    form_login();
    }
    ?>
    downloadeguide likes this.

  2. #2
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Qui non è la sezione del PHP.. anche sbagliando il captcha avrò accesso alla sessione... 1)La sessione la devi creare solo se il testo del CAPTCHA da esito positivo.
    2)Purtroppo anche avendo effettuato il login una sola volta avrò sempre accesso nella pagina da bloccare (non viene verificato il CAPTCHA ma sola la sessione, quindi uguale cookie sempre accesso) dovresti utilizzare
    Codice PHP:
    //script pagina di blocco
    session_start();
    if(isset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText'])){
    header('Location: index2.php');
    die();
    }

    //script index2.php finale
    if(isset($_POST['txt_captcha']) && $_POST['txt_captcha'] == $_SESSION['session_captchaText'])
    header('Location: areariservata.php');
    }
    else
    {
    $_SESSION['session_captchaText'] = 1;
    form_login();
    }

    //areariservata.php
    SESSION_start();
    unset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText']);
    var_dump($_SESSION);
    al termine dello script maggiori approfondimenti session_destroy(). Si deve creare cmq la sessione per CAPTCHA anche un semplice 1 come valore
    3)isset accetta più di una variabile
    Ultima modifica di darbula : 22-02-2017 alle ore 04.31.13

  3. #3
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Prima di tutto grazie per avermi risposto, poi ho inserito il post in questa sezione perche sono degli script da inserire in un file PHP. Comunque ho provato a fare come hai detto, ma ora mi fa entrare sempre, non capisco se rimane la sessione aperta o è un problema di accesso. Come faccio ad inserire o un pulsante di termina sessione o una sessione a tempo dopo il quale bisogna rifare la procedura di accesso.

  4. #4
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Ciao sezione PHP è normale poiché esiste la sessione del CAPTCHA .. ho sbagliato scusami.. Crea la sessione CAPTCHA dentro il form_login in entrambi i casi , poi nella index2.php finale, inizialmente controlli
    Codice PHP:
    //La funzione check
    if(isset($_POST['txt_captcha']) {
    if(
    $_POST['txt_captcha'] == $_SESSION['session_capchaText']) {
    // riscrivono la sessione
    $_SESSION['session_captchaText'] = $_POST['txt_CAPTCHA'];
    header("Location: areariservata.php");
    }else{
    unset(
    $_SESSION['session_captchaText'],$_SESSION['utente'],$_SESSION['password']);
    form_login();
    }
    }
    se la check ritorna falsa, anche qui dovrò usare unset per il solo captcha, in area riservata uso unset su tutti e tre gli elementi.. Otterrò 2 procedure di login , 1)con utente,password e CAPTCHA finto.. 2) con utente,password e captcha vera... Il login si dovrà sempre rifare
    Sta spiegato tutto nel link session_destroy inviatoti prima... Di default viene creato un cookie con data anteriore a quella corrente e di norma il browser non dovrebbe conservare tale cookie ma chrome lo salva ugualmente.
    Ultima modifica di darbula : 22-02-2017 alle ore 13.00.00

  5. #5
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Ho provato a fare come hai detto, ma entro senza inserire niente. No so se mi sono spegato bene. C'è una pagina di login che si chiama index2.php in questa c'è un form login dove si inseriscono i dati utente e captcha, se sono ok ti manda ad una pagina areariservata.php dove c'è un link ad una pagina dove bisogna accedere solo dopo essersi loggato. Il problema è che entro direttamente nella pagina del link senza inserire niente. In alto alla pagina ho inserito lo script
    Codice PHP:
    //script pagina di blocco
    session_start();
    if(isset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText'])){
    header('Location: index2.php');
    die();
    }
    Forse sono ancora con la sessione aperta?
    Ho provato anche a uscire dal browser e a spegnere il pc per terminare la sessione e provare a vedere se mi blocca, ma entro senza codici.
    Grazie per l'aiuto.
    Ultima modifica di collezionieuro : 22-02-2017 alle ore 13.31.54

  6. #6
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Ti inserisco anche il form che si trova nella pagina index2.php dove si inseriscono i dati di accesso
    Codice PHP:
    <?
    function check($user,$password){
    include(
    "utenti2.php");

    foreach(
    $utenti as $user_ => $password_){
    if ((
    $user==$user_) AND ($password==$password_)) {
    return
    true;
    }
    }

    return
    false;
    }

    function
    form_login(){
    ?>



    <form id="login" action="<?=$PHP_SELF?>" method="post">
    <div style="text-align:center;margin-left:auto;margin-right:auto;">

    <p><img src="captcha.php" alt="captcha codice" name="captcha" width="233" height="49" id="captcha" /></p>
    <p class="style10"><strong><em>*Inserisci il testo che vedi nell'immagine:</em></strong></p>
    <font color="white">
    <p class="style1">
    <input name="txt_captcha" type="text" id="txt_captcha" style="width: 174px; height: 23px" class="style5" />
    <a href="index2.php">
    <img alt="" src="http://forum.it.altervista.org/images/Refresh.png" width="25" height="19" class="style9"></a>
    <span class="style28"><strong><a href="index2.php">refresh</a></strong></span></p>
    </font>

    <span class="style6"><strong><em>Utente</em></strong></span><font color="white">:<br>
    <input type="text" name="utente" size="20" maxlength="255"><br>
    </font>
    <span class="style6"><strong><em>Password:</em></strong></span><font color="white"><br>
    <input type="password" name="password" size="20" maxlength="255"><br><br>
    <input type="submit" value=" OK ">
    <br>
    <br>
    </div>
    </form>

  7. #7
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Si hai ancora la sessione attiva... Il cookie rimane salvato nel browser oppure hai la cache di quella pagina.(la copia)... captcha.php oltre a creare l'immagine crea anche la sessione? Pagina di blocco va bene cosi come..
    Pagina index2.php iniziale va bene pure..
    Pagina index2.php finale
    Codice PHP:

    <? }
    if(isset(
    $_POST['utente'],$_POST['password'])){
    if (
    check($_POST['utente'],$_POST['password'])){
    $_SESSION['utente'] = $_POST['utente'];
    $_SESSION['password'] = $_POST['password'];

    if (isset(
    $_POST['txt_captcha']) {
    if(
    $_POST['txt_captcha'] == $_SESSION['session_captchaText'])
    {
    header('Location: areariservata.php');
    }
    else
    {
    unset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText']);
    form_login();
    }
    }
    }else{
    unset(
    $_SESSION['session_captchaText']);
    form_login();
    }
    }else{
    form_login();
    }
    ?>
    se la $_SESSION['session_captchaText'] viene creato in captcha.php.
    areariservata.php come scritto prima da me
    In pratica hai bisogno di uno script che verifica solo la sessione utente,password e CAPTCHA? allora mettilo in cima dove ci sta già gli isset per utente e password... Dopo di che elimina tutta la cache del browser e cloudfare se lo hai attivato
    Ultima modifica di darbula : 22-02-2017 alle ore 14.40.15

  8. #8
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    In pratica devo inserire lo script che mi hai postato alla fine della pagina index2.php e questo script sulle pagine che voglio bloccare?
    Codice PHP:
    session_start();
    if(isset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText'])){
    header('Location: index2.php');
    die();
    }
    per far terminare la sessione quando escono va bene questo script e dove devo inserirlo?
    Codice PHP:
    <?php
    session_start
    ();
    session_unset ();
    session_destroy ();
    session_write_close ();
    setcookie ( session_name (), '' , 0 , '/' );
    session_regenerate_id ( true );
    ?>
    in pratica voglio che ogni volta che vogliono entrare devo effettuare il login.

  9. #9
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Ma non provi neppure il codice che ti scrivo che cerchi a fare aiuto se poi non mi ascolti?? unset($_SESSION[indice]) deregistra una variabile di sessione mentre session_unset () deregistra tutte le variabili di sessione. L'esempio è per arearisevata.php http://forum.it.altervista.org/javas...ml#post1335143 . Dopo che provi il mio codice ti consento un'eventuale domanda :)
    Ultima modifica di darbula : 22-02-2017 alle ore 15.39.13

  10. #10
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    il codice lo provo è da ieri che faccio le prove di continuo, è che tra una risposta e l'altra faccio anche delle prove con altri codici. Comunque il tuo codice l'ho inserito ma mi da errore "Fatal error: Call to undefined function check() in /membri/xxxxxxxxx/monetereg.php on line 12". Come ti ho detto provo altre cose perchè entro sempre senza password. Se non uso i codici non devo entrare, perchè questa pagina da accesso a molti download di pdf e funzionano tutti. Ora provo a risolvere il problema errore 12, ma a volte da errore a volte fa entrare senza credenziali. Ho provato anche con un altro pc per vedere se era un problema di cache, ma è uguale. Se vuoi ti mando il link per provare ad entrare così capisci di cosa parlo.
    Ultima modifica di collezionieuro : 22-02-2017 alle ore 17.09.25

  11. #11
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Sono ancora con lo stesso problema ho inserito tutti i codici che mi hai detto, ma niente. Visto che hai accennato al codice CAPTCHA ti inserico anche il captcha.php
    Codice PHP:
    <?php
    session_start
    ();
    header("Content-type: image/png");
    $captchaImage = imagecreatefrompng("captcha.png") or die("Cannot Initialize new GD image stream");
    $captchaFont = imageloadfont("font.gdf");
    $captchaText = substr(md5(uniqid('')),-9,9);
    $_SESSION['session_captchaText'] = $captchaText;
    $captchaColor = imagecolorallocate($captchaImage,200,200,200);
    imagestring($captchaImage,$captchaFont,15,5,$captchaText,$captchaColor);
    imagepng($captchaImage);
    imagedestroy($captchaImage);
    ?>
    i sono anche errori di sintassi nel file index2.php stavo verificando mi sembra che le parentesi non corrispondano.
    Sto facendo tuute le prove possibili, ma ho il sito bloccato e tante persone che mi chiedono il perchè, capisco che ti rompo. Grazie.
    Ultima modifica di collezionieuro : 22-02-2017 alle ore 18.32.40

  12. #12
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Si mandami i link.. inizio script da bloccare
    Codice PHP:
    <?

    session_start
    ();
    if(!isset(
    $_SESSION['utente'],$_SESSION['username'],$_SESSION['session_captchaText'])){
    header("Location:index2.php");
    die();
    }
    ?>
    index2.php finale
    Codice PHP:
    <?}
    if(isset(
    $_POST['utente'],$_POST['password'],$_POST['txt_captcha'])){
    if(
    check($_POST['utente'],$_POST['password'])){
    $_SESSION['utente']=$_POST['utente'];
    $_SESSION['password']=$_POST['password'];

    if(
    $_POST['txt_captcha']==$_SESSION["session_captchaText"])
    {
    header('Location:areariservata.php');
    }
    else
    {
    unset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText']);
    form_login();
    }
    }else{
    unset(
    $_SESSION['session_captchaText']);
    form_login();
    }
    }else{
    form_login();
    }
    ?>
    Fine script da bloccare
    Codice PHP:
    unset($_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText']);

  13. #13
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Prima di session_start() e dei tag di apertura non deve esserci nessuno output che viene restiuto al browser..
    Ultima modifica di darbula : 22-02-2017 alle ore 22.18.08

  14. #14
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    OK Grazie. Ora non posso fare prove altrimenti se blocco tutto non posso rimediare. Provo domani e ti faccio sapere. Grazie ancora per la disponibilità.

  15. #15
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Buongiorno, ho provato lo script, ma non mi fa accedere rimane sempre nell'index2.php. Ti ho inviato un messaggio privato con il link e dei codici di accesso per provare. Grazie.

  16. #16
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    CloudFlare svuotato, sembrerebbe che non passa la verifica in questo punto
    Codice PHP:
    <?}
    if(isset(
    $_POST['utente'],$_POST['password'],$_POST['txt_captcha'])){
    if(
    check($_POST['utente'],$_POST['password'])){
    $_SESSION['utente']=$_POST['utente'];
    $_SESSION['password']=$_POST['password'];

    if(
    $_POST['txt_captcha']==$_SESSION["session_captchaText"])
    {
    header('Location:areariservata.php');
    }
    else
    {
    unset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText']);
    form_login();
    }
    }else{
    unset(
    $_SESSION['session_captchaText']);
    form_login();
    }
    }else{
    form_login();
    }
    ?>
    perche ho provato a dare accesso libero (non verificare il controllo) alla pagina arearegistrata.php ma non viene reinderizzato niente. ps i codici che ti ho inviato sono attivi.
    Ultima modifica di collezionieuro : 24-02-2017 alle ore 13.01.00

  17. #17
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Buongiorno si ho provato.. Ma teoricamente dovrebbe essere perfetto, nel senso che se nella index2.php non trova i valori post vado alla funzione form_login() invece se trova i valori post verifica prima la username e password se restituisce True continuo verificando anche il captcha e solo se il CAPTCHA è sbagliato cancello la sessione utente,password e captcha ritornado al form_login(), mentre se il controllo username e password restituisce FALSE cancello solo la sessione CAPTCHA ritornando a form_login()..
    Non che il valore della sessione è cifrato in md5? $captchaText = substr(md5(uniqid('')),-9,9);
    PS.. Cmq nelle 'Location: ' andrebbe inserito uno spazio bianco. Prova controllando gli if in questo modo (da adattare a te) if($var = (variabile == variabile)) {
    qui se è true
    }else{
    var_dump($var);
    }
    Ultima modifica di darbula : 24-02-2017 alle ore 13.35.39

  18. #18
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    LO script captcha e il form di immissione sono quelli che ti ho inserito qualche post sopra. Lo spazio nella location, l'avevo gia messo, alcune domande per capire se ci sono errori, la location va scritta 'Location: ' o "Location: " ? La parentesi graffa chiusa dopo il <? ci deve essere o no? Comunque come ti ho detto anche aprendo la pagina non reinderizza.

  19. #19
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Le semplice stringhe li puoi racchiudere in apici singoli, mentre per espandere una variabile usi i doppi apici.. Non lo so per la graffa il codice è il tuo in quel script ho aggiunto due variabili post e due variabili unset il resto è come il tuo script originale.. Puoi procedere verificando l'if come ti ho detto prima?
    Ultima modifica di darbula : 24-02-2017 alle ore 13.53.54

  20. #20
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Ho provato a reinserire gli script originali vecchi che si trovano all'inizio di questo post. Dopo alcuni tentativi funzionano, ossia si deve ripetere due o tre volte l'immissione del nome utente, password e captcha. Non riesco a capire cosa c'è di sbagliato. Soluzioni?
    Ultima modifica di collezionieuro : 24-02-2017 alle ore 18.42.13

  21. #21
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Si deve inserire un header solo se non si invia outup al browser (hey io sono il testo prima del tag di apertura<? $a=0; ?>ciao io sono il testo dopo il tag di chiusura)cmq ho assemblato il tutto è funziona, ci sono 4 errori, tutti i codici invece di usare uno spazio ' ' usano non breaking speace, nella funzione check chi è user dal momento che non è mai definito,terzo non si deve produrre output se si deve fare un redirect, quarto aggiustato pure una variabile.
    areariservata.php
    Codice PHP:
    <?

    session_start
    ();
    if(!isset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText'])){
    header('Location: index2.php');
    die();
    }
    echo
    'arrivato a destinazione';
    unset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText']);
    ?>
    index2.php completo
    Codice PHP:
    <?
    session_start
    ();
    function
    check($user,$password){
    include(
    'utenti2.php');

    foreach(
    $utenti as $user_=>$password_){
    if((
    $_POST['utente']==$user_)AND($_POST['password']==$password_)){
    return
    true;
    }
    }

    return
    false;
    }

    function
    form_login(){
    echo
    '<form id="login" action=" ',$_SERVER['PHP_SELF'],'" method="post">
    <div style="text-align:center;margin-left:auto;margin-right:auto;">

    <p><img src="captcha.php" alt="captcha codice" name="captcha" width="233" height="49" id="captcha" /></p>
    <p class="style10"><strong><em>*Inserisci il testo che vedi nell\'immagine:</em></strong></p>
    <font color="white">
    <p class="style1">
    <input name="txt_captcha" type="text" id="txt_captcha" style="width:174px;height:23px" class="style5" />
    <a href="index2.php">
    <img alt="" src="http://forum.it.altervista.org/images/Refresh.png" width="25" height="19" class="style9"></a>
    <span class="style28"><strong><a href="index2.php">refresh</a></strong></span></p>
    </font>

    <span class="style6"><strong><em>Utente</em></strong></span><font color="white">:<br>
    <input type="text" name="utente" size="20" maxlength="255"><br>
    </font>
    <span class="style6"><strong><em>Password:</em></strong></span><font color="white"><br>
    <input type="password" name="password" size="20" maxlength="255"><br><br>
    <input type="submit" value="OK">
    <br>
    <br>
    </div>
    </form>'
    ;
    }
    if(isset(
    $_POST['utente'],$_POST['password'],$_POST['txt_captcha'])){
    if(
    check($_POST['utente'],$_POST['password'])){
    $_SESSION['utente']=$_POST['utente'];
    $_SESSION['password']=$_POST['password'];

    if(
    $_POST['txt_captcha']==$_SESSION["session_captchaText"])
    {
    header('Location: areariservata.php');
    }
    else
    {
    unset(
    $_SESSION['utente'],$_SESSION['password'],$_SESSION['session_captchaText']);
    form_login();
    }
    }else{
    unset(
    $_SESSION['session_captchaText']);
    form_login();
    }
    }else{
    form_login();
    }
    ?>
    captcha.PHP
    Codice PHP:
    <?php
    session_start
    ();
    header('Content-type: image/png');
    $captchaImage=imagecreatefrompng('captcha.png') or die('Cannot Initialize new GD image stream');
    $captchaFont=imageloadfont('font.gdf');
    $captchaText=substr(md5(uniqid('')),-9,9);
    $_SESSION['session_captchaText']=$captchaText;
    $captchaColor=imagecolorallocate($captchaImage,200,200,200);
    imagestring($captchaImage,$captchaFont,15,5,$captchaText,$captchaColor);
    imagepng($captchaImage);
    imagedestroy($captchaImage);
    ?>
    utenti2.php non devi copiare questo è solo un esempio
    Codice PHP:
    <?
    $utenti
    = array('io' => 'ciao');
    ?>
    serve solo uno sfondo per il CAPTCHA che dovrà chiamarsi chaptcha.php

  22. #22
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Rettifica, puoi mostrare output nella pagina index2.php dato che il redirect è per altre pagine, $user e $password sono definiti nella funzione check, captcha.PHP va cambiato in captcha.php e lo sfondo si chiama captcha.png non captcha.php
    Ultima modifica di darbula : 24-02-2017 alle ore 21.28.35

  23. #23
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    provato ma non funziona rimane sempre nell'index2.php ti ho lasciato i codici che ti ho dato per provare ad accedere. Fammi sapere. Grazie
    Ultima modifica di collezionieuro : 24-02-2017 alle ore 21.50.09

  24. #24
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Ciao OK povero... Prova un attimo da me anche.
    PS. Il CAPTCHA non si vede più sul tuo sito, controlla se erroneamente hai cambiato lo sfondo captcha.png e codice che crea il CAPTCHA captcha.php
    Ultima modifica di darbula : 24-02-2017 alle ore 22.09.30

  25. #25
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Ho provato il tuo e funziona, la mia nel refresh non aggiorna le immagini, e continua a non farmi accedere. La sezione utenti è: $utenti["darxxxx"] = "pwxxxxx";
    mentre quella che ho usato per i tuoi file è: $utenti = array('daxxxx' => 'pwxxxx');
    Quale devo usare?
    Il file captcha.php mi sembra identico a quello che avevo o hai cambiato qualcosa?
    Il form di accesso in index2.php era diviso in tre parti ho visto che ne hai fatto uno unico, è meglio?

  26. #26
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    $utenti = array('daxxx' => 'pwxxx'); è equivalente a $utenti['daxxx'] = 'pwxxx';
    Ho solo tolto i non breaking space nel mio file captcha.php , controlla da gestione file se esiste ancora captcha.png?
    Si ho fatto un unico file index2.php è meglio, perché nella funzione form_login() deve starci il contenuto del form altrimenti se ci sta il form fuori da PHP non avrebbe senso.. Devi avere conoscenza in che cosa consiste una stringa in php $a='l\'immagine'; come vedi ho usato il backslash dato che la stringa è delimitata da apici singoli altrimenti darebbe errore, anche il backslash va raddoppiato quando deve rappresentare se stesso... Questo è chiamato escape.. Devo riflettere sul refresh poi ti farò sapere.
    Impossibile il refresh deve funzionare per forza, in pratica si riconnette alla stessa pagina.
    Ultima modifica di darbula : 24-02-2017 alle ore 23.09.04

  27. #27
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Ho salvato i file modificati con i tuoi script. Ma per questa sera ho reinserito quelli vecchi, almeno qualcuno può entrare. Non capisco cosa ci sia che blocca. Una precisazione io uso come programma per modificare i file microsoft Sharepoint Designer
    quando invece uso il browser tramite altervista, qualche voltadopo aver caricato i file modificati, trovo un puntino rosso prima dell'inizio dello script tipo •<?
    Domani provo di nuovo i tuoi file, anche se non capisco cosa ci sia che non funziona. Grazie.

  28. #28
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Ho salvato i file modificati con i tuoi script. Ma per questa sera ho reinserito quelli vecchi, almeno qualcuno può entrare. Non capisco cosa ci sia che blocca. Una precisazione io uso come programma per modificare i file microsoft Sharepoint Designer
    quando invece uso il browser tramite altervista, qualche voltadopo aver caricato i file modificati, trovo un puntino rosso prima dell'inizio dello script tipo •<?
    Domani provo di nuovo i tuoi file, anche se non capisco cosa ci sia che non funziona. Grazie. ps lo sfondo captcha.png non è cambiato.

  29. #29
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Ciao io lo scrivo a mano il codice (uso un editore di testo che non aggiunge nulla al codice) , quindi non saprei aiutarti.. Ora provo a copiare/incollare la stringa iniziale di function check
    Codice PHP:
    function check
    a prima vista sembra normale ma l'unico spazio bianco che c'è non è quello giusto.. invece è lo spazio unificatore &nbsp; https://it.wikipedia.org/wiki/Spazio_unificatore chissà forse potrebbe essere questa la differenza tra i nostri script. Cmq accertati di non utilizzare il boom nei file che crei.. PS.. Il tag di apertura <html> in index2.php si trova in seconda posizione ad esempio.. Purtroppo quando qui si edita un mesaaggio vengono aggiunti dei &nbsp; il che ho dovuto inventare uno script per toglierli.. Salvo il file.php nel mio spazio precedentemente copiato dal forum, poi chiamo il file è aggiungo una query string esempio.php?a=file.php
    Codice PHP:
    <?php
    if($_GET['a']) {
    $c = file_get_contents($_GET['a']);
    $b = fopen($_GET['a'],'w+b');
    $c = strtr($c,array("\xC2\xA0" => ''));
    fwrite($b,$c);
    fclose($b);
    }
    ?>
    purtroppo toglie tutti i &nbsp; (quelli da html non si dovrebbero toccare) ovviamente in utf-8 è due bytes mentre in iso-8859-1 è un byte (&nbsp;)
    Ultima modifica di darbula : 24-02-2017 alle ore 23.33.50

  30. #30
    Data registrazione
    13-05-2012
    Messaggi
    182

    Predefinito

    Buongiorno, ho inserito entranbi i file, quelli vecchi che ancora uso, e quelli realizzati da te con index: index5.php, sembrano funzionare, se vuoi provare hai i tuoi codici di accesso. L'unica cosa è che alcune volte entrambi fanno i capricci e bisogna provare più volte. Solo il captcha.php ho lasciato il vecchio perche quello nuovo non mi faceva entrare. Per adesso li tengo sotto controllo e vediamo cosa succede. Per adesso grazie tantissimo per il tuo tempo e per la disponibilità. Se ho novità ti faccio sapere. Grazie ancora.

Pagina 1 di 3 123 UltimoUltimo

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •