Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    8

    Problema con permessi php!!

    Salve a tutti, so di certo di trovare persone più esperte di me nel settore qui, perciò vi chiedo aiuto perché ne ho un disperato bisogno. Sono un "novizio" in php e ho appena sviluppato questo codice per la registrazione ad un sito, solo che quando lo lancio in locale mi da questo:


    Accesso negato!

    Non disponi dei permessi necessari per accedere all'oggetto richiesto, oppure l'oggetto non può essere letto dal server.
    Se pensi che questo sia un errore del server, per favore contatta il webmaster.
    Error 403

    127.0.0.1
    Apache/2.4.4 (Win32) PHP/5.4.14







    il codice è :

    <?php


    include('conn.php');




    if(isset($_POST ['submit']))
    {
    $username = isset($_POST['username']) ? clear($_POST['username']) : false;
    $password = isset($_POST['password']) ? clear($_POST['password']) : false;
    $email = isset($_POST['email']) ? clear($POST['email']) :false;


    if (empty ($username) || empty($password) || empty ($email))
    {
    echo 'tutti i campi sono obbligatori<br><br>
    <a href="javascript:history.back();">indietro</a>';
    }
    elseif(strlen($username) > 16 )
    {
    echo 'nome utente non valido max 16 caratteri<br><br>
    <a href="javascript:history.back();">indietro</a>';
    }
    elseif(strlen($password) < 6 || strlen($password) > 20 )
    {
    echo 'password non valida, max 6 caratteri e minimo 20<br><br>
    <a href="javascript:history.back();">indietro</a>';
    }
    elseif (!filter_var($emai , FILTER_VALIDATE_EMAIL))
    {
    echo 'indirizzo email non valido';
    }
    elseif(strlen($password) < 60 )
    {
    echo 'email non valida, max 60 caratteri<br><br>
    <a href="javascript:history.back();">indietro</a>';
    }
    elseif (mysql_num_rows (mysql_query("SELECT * FROM utenti WERE username LIKE '$username'")) > 0)
    {
    echo 'username già in uso, usane un altro.<br><br>
    <a href="javascript:history.back();">indietro</a>';
    }
    elseif (mysql_num_rows (mysql_query("SELECT * FROM utenti WERE email LIKE '$email'")) > 0)
    {
    echo 'email già in uso, usane un altro.<br><br>
    <a href="javascript:history.back();">indietro</a>';
    }
    else
    {
    $password = md5 ($password);
    if (mysql_query ("INSERT INTO utenti (username, password, email) VALUES ('$username', '$password', '$email')"))
    {
    echo '<h1>Dati inviati correttamente, utente reggistrato, controlla la tua e-mail</h1><br /><br />';
    }
    else
    {
    echo 'ERRORE' . mysql_error();
    }




    //PHP MAILER


    require_once('../class.phpmailer.php');

    $mail = new PHPMailer(); // defaults to using php "mail()"
    $utenza = mysql_query ("SELECT id utente, username, password FROM utenti WHERE email LIKE '$email' ");
    $row = mysql_fetch_array ($utenza);
    $id_utente = $row ['id_utente'];
    $url = "benvenuto nel portale, clicca sul link per completare la registrazione.";



    $body = file_get_contents($url);
    $body = eregi_replace("[\]",'',$body);

    $mail->AddReplyTo("daniloo91@hotmail.it","First Last");

    $mail->SetFrom('daniloo91@hotmail.it', 'First Last');

    $mail->AddReplyTo("daniloo91@hotmail.it","First Last");

    $address = ($email);
    $mail->AddAddress($address, "John Doe");

    $mail->Subject = "PHPMailer Test Subject via mail(), basic";

    $mail->AltBody = "To view the message, please use an HTML compatible email viewer!aaaaaaaa"; // optional, comment out and test

    $mail->MsgHTML($body);

    $mail->AddAttachment("images/phpmailer.gif"); // attachment
    $mail->AddAttachment("images/phpmailer_mini.gif"); // attachment

    if(!$mail->Send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
    } else {
    echo "Message sent!";
    }






    }


    }


    else{

    ?>


    <center>
    <div id="modulo login">
    <form action="<?php echo $SERVER['PHP SELF'];?> " method="POST">
    <label>username: <input type="text" name="username" autofocus required maxlength="16"
    placeholder="inserire nome utente"> </label><br>
    <label>password: <input type="password" name="password" required maxlength="20"
    placeholder="inserire la password"></label><br>
    <label>email: <input type="email" name="email" required maxlength="60"
    placeholder="inserire l' email" </label></ br>
    <input type="submit" name="sumbit" value="registrati" />
    <input type="reset" id="reset" value="azzera" />


    </form></div></center>


    <?php
    }
    ?>


    Più quello di conn.php :

    <?php
    $dbhost = "localhost";
    $dbuser = "root";
    $dbpass = "";
    $dbname = "cv";


    $con = mysql_connect( $dbhost , $dbuser , $dbpass, $dbname );
    mysql_select_db ("cv" , mysql_connect ($dbhost, $dbuser, $dbpass));
    if (!$con)
    {
    die ('impossibile connettersi al db' . mysql_error());
    }


    mysql_query ("CREATE TABLE IF NOT EXIST utenti (id utente INT NOT NULL AUTO INCREMENT PRIMARY KEY, id candidato INT NOT NULL, username VARCHAR(16) NOT NULL, password VARCHAR(32) NOT NULL, email VARCHAR (60) NOT NULL)");
    function clear($var)
    {
    return addslashes(htmlspecialchars(trim($var)));
    }






    ?>









    Spero tanto qualcuno di voi mi possa dare una mano.

  2. #2
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    Ciao è benvenuto sul forum.
    il primo consiglio che ti posso dare è quello di utilizzare il tag code per inserire il codice.
    l'errore che hai postato indica chiaramente che non hai il permesso di vedere quello che hai richiesto. Il codice php è poco rilevante.
    come si chiama il file che contiene il codice? Sei sicuro di aver salvato il file nella root del web server? Se il file si chiama index.php e si trova nella root del server, hai detto ad apache, mediante l'apposito file di configurazione, di leggere i file index.php?
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    8
    Ciao ciro78, grazie del benvenuto! Si hai ragione dovevo usare il tag code, scusa ma ancora devo imparare queste cose.
    Comunque il file si chiama registrazione.php e si trova all'interno della root di default di easyphp (DocumentRoot "${path}/data/localweb") all'interno di una cartella che ho chiamato privato, in questa root tengo anche gli altri file che mi legge senza problemi.
    No non ho detto al file httpd di leggere il file registrazione.php potresti spiegarmi come posso fare?
    Ti ringrazio comunque della risposta precedente, mi ha ridato un pò di speranza.

  4. #4
    ma se nella stessa cartella ci metti un file che si chiama test.php con dentro questo codice:

    Codice PHP:

    <?php

    phpinfo
    ();
    e basta, riesci a vederlo o ti dà lo stesso problema? Prova in easyphp a creare un virtualhost apposito per il tuo "progetto", così potresti mettere i file php dove ti pare (ad esempio C:\MyWebProject) e fare un virtualhost che punti a quella cartella (per queste cose easyphp è molto comodo)
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    8
    Ciao Santino83_02, ho provato a inserire il file che mi hai detto ma nulla... Adesso vorrei provare con il tuo secondo consiglio, ma come ho detto prima io sono un "novizio" in php e mi potresti spiegare come creare un virtualhost che poi punti a quella cartella?
    Grazie tante!!!

  6. #6
    aoh t'ho detto che lo devi fare da easyphp!!! c'è il modulo apposito per gestire i virtualhost, scaricalo se già non ce l'hai
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  7. #7
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    ma io a questo punto direi di cominciare dalle basi di php e di easyphp

    non puoi srivere nel browser 127.0.0.1 ed aspettarti il miracolo di natale

    al più devi scrivere

    http://127.0.0.1/registrazione.php meglio http://localhost/registrazione.php

    bada non ho detto di dire ad apche di leggere registrazione.php ma index.php

    l'errore che hai segnalato si verifica quando non vengono trovati i due file di default che sono appunto index.html o index.php
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    8
    Si hai ragione ciro78 è proprio dalle basi che devo partire infatti.
    Penso proprio che mi stai indicando la strada giusta in quanto se inserisco :
    http://127.0.0.1/registrazione.php o http://localhost/registrazione.php l'errore cambia e mi da OGGETTO NON TROVATO e ERROR 404 invece di ACCESSO NEGATO e ERROR 403.
    Quindi dove dovrei inserire questi file di default?
    Grazie ancora della risposta!(scusa se ringrazio in continuazione ma ricevere aiuto cosi incondizionatamente ad oggi mi sembra un vero e proprio miracolo
    , spero che riuscirò a ricambiare in avanti).

  9. #9
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    il file registrazione.php esiste nella root del server?

    sempre nella root inserisci un file chiamato index.php e inserisci il codice sotto.

    codice:
    <?php
    
    phpinfo();
    se funziona mistero risolto. e studia il php-..
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    8
    Si il file registrazione.php esiste nel local web ma adesso quando vado ad aprire la cartella dove c'è il file all'interno del local web mi stampa video direttamente le info di php con phpinfo().

    Si è vero devo studiarlo meglio non c'è dubbio infatti ti sarei molto grato se avresti anche qualche consigli su tutorial o libri da seguire!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.