• User Attivo

    Problemi con Apache 2.2. credo...

    Salve a tutti,
    premetto che sono un neofita di php, ho iniziato a studiarlo da circa una settimana, ma dopo aver fatto un po' di teoria sono passato alla pratica ed ho riscontrato il seguente problema:
    ho installato sul mio pc (che ha come sistema operativo Vista, e a cui ho in passato sbloccato tutti gli amministratori nascosti etc, insomma di cui sono l'unico amministratore), ho installato dicevo:
    a) Apache 2.2 win 32
    b) PHP 5.2.5
    Ho testato l'attività di Apache e il browser mi dice ''It work!''
    Se eseguo script Php il browser li visualizza nel modo corretto.
    (Ripeto, seguendo diverse guide, tra cui quella di David Sklar 'PHP5 Elementi di programmazione', server e l'interprete funzionano perfettamente), ma ecco il problema:
    fin quando gli faccio eseguire script php semplici tutto funziona; ieri sono andato un po' oltre, seguendo le lezioni del libro di Sklar, e ho inserito questo semplice script:
    <?php
    if (array_key_exists('my_name',$_POST)) {
    print "Hello, ". $_POST['my_name'];
    } else {
    print<<<HTML
    <form method="post" action="$_SERVER[PHP_SELF]">
    Your name: <input type="text" name="my_name">
    <br/>
    <input type="submit" value="Say Hello">
    </form>
    HTML;
    }
    ?>

    ora: l'interprete php mi restituisce questo script correttamente, ovvero un campo di stesto in cui inserire qualche parola e un pulsante, alla cui pressione, nel browser dovrebbe apparire un messaggio con quel po' di testo inserito nella casella e la scritta Hello, invece il browser mi restituisce:
    Errore 403 - Accesso negato - E' stato possibile connettersi al sito tramite internet, ma non si dispone dell'autorizzazione per visualizzare la pagina!
    Qualcuno sa dirmi se ho sbagliato qualcosa??
    Ovviamente sia l'interprete PHP che Apache lavorano in remoto e non on-line!
    Forse avrei dovuto scrivere qualcosaltro anziché $_SERVER[PHP_SELF] ??
    Devo modificare qualcosa in Apache??
    Grazie a chiunque mi aiuti, poiché se non sblocco questo problema non posso continuare a studiarci sopra, giacché non ho il riscontro agli script php.!!
    Grazie mille!!


  • User Attivo

    Da me lo script funziona correttamente, l'errore forse si trova in $_SERVER[PHP_SELF] dovuto ad una errata installazione o configurazione del motore PHP nella tua macchina.
    Prova a creare un test file contenente solo l'echo di $_SERVER[PHP_SELF], dovrebbe ritornare solo il nome dello script preceduto da / (Es: /test.php)

    test.php
    [php]
    <?php
    echo $_SERVER["PHP_SELF"];
    ?>
    [/php]Prova ad utilizzare in alternativa $_SERVER[SCRIPT_NAME], che a differenza del precedente è una variabile di Apache e non di PHP.

    Ciao!