DOMANDA [PHP] Chi mi aiuta ??

Pubblicità
Stato
Discussione chiusa ad ulteriori risposte.

Mantegnous

Utente Attivo
Messaggi
843
Reazioni
42
Punteggio
67
1. Devo sistemare quella ricerca.php che è completamente errata, voglio che mi stamp TUTTI gli interventi inerenti a quel cliente, ricercandole mediante il Nome Cognome

2. L'inserimento dei dati se pur li inserisce nel database, causa dei problemi, il primo è che se la pagina viene aggiornata, viene caricata di continuo la query nel db, e per secondo, da un errore php inerente a un object...


Login.php
PHP:
 LOGIN.PHP - Pastebin.com[/URL] *Funziona
 Input.php [URL="http://pastebin.com/WWSxMLyT"][PHP] Inserimento Dati - Pastebin.com[/URL] (inserimento dati nel db mysql mediante form) *Funziona... li inserisci i dati
 Search.php [URL="http://pastebin.com/XT7ksvRu"][PHP] search.php - Pastebin.com[/URL] (dovrebbe cercare la riparazione effettuata al cliente mediante nome e cognome) *Errato

 Database mysql esportato [[URL="http://pastebin.com/XzjWYcCy"]SQL] Database - Pastebin.com[/URL]
 
Ultima modifica:
Ho realizzato un db, delle pagine web e del codice php.

Pagina login.php funzionante, ora devo far in modo che una volta loggato ti porti su una pagina che a sua volta cliccando delle scelte poste in essa ti porti su altre pagine php, che serviranno per ricerca e inserimento di dati nel database mysql.

Detto ciò, chi mi aiuta con la realizzazione e implementazione? La ricerca è simile al login, invece di confrontare i campi presi li stampa...


scusa se ti rompo eh, ma cercare su google come caricare form dati php non da risultati o guide?
premetto che non uso php perchè è obsoleto in università non se lo calcolano più da anni però mi pare strano che non trovi una guida da seguire.

comunque per la ricerca dati dovrai mandare un parametro che poi eseguirà una query e ti restituirà il risultato ad esempio

Codice:
Select nome_tecnico from tecnici where nome_tecnico LIKE %'ABC'% 

e questa query ti darà un ritorno con i dati presenti nel db che iniziano con quel nome e poi dovrai stamparli nel tuo oggetto
 
Ultima modifica:
scusa se ti rompo eh, ma cercare su google come caricare form dati php non da risultati o guide?
premetto che non uso php perchè è obsoleto in università non se lo calcolano più da anni però mi pare strano che non trovi una guida da seguire.

comunque per la ricerca dati dovrai mandare un parametro che poi eseguirà una query e ti restituirà il risultato ad esempio

Codice:
Select nome_tecnico from tecnici where nome_tecnico LIKE %'ABC'% 

e questa query ti darà un ritorno con i dati presenti nel db che iniziano con quel nome e poi dovrai stamparli nel tuo oggetto

Quindi più o meno è la stessa cosa del login la ricerca, invece di confrontare gli sparo un echo che stampa i valori che ha trovato...

Per l inserimento è simile pure, lo avevo creato prima, insert into... e mi ha caricato i valori nel db.

Fatto e che voglio collegare nel miglior modo possibile le varie pagine php.

Login -> Area Riservata-> Seleziona opzioni

Opzione 1 -> Inserimento
Opzione 2 -> Ricerca

Tutte queste pagine accedibili solo dopo aver effettuato errore altrimenti mostra un errore e ti fa il redirect al login.php dopo 5 secondi

Qualcosa di simile da inserire nella pagine riservate?

PHP:
<?php
session_start();
if (!session_is_registered('autorizzato')) {
  echo "<h1>Area riservata - accesso negato</h1>";
  die;
}
?>
 
Ultima modifica:
Quindi più o meno è la stessa cosa del login la ricerca, invece di confrontare gli sparo un echo che stampa i valori che ha trovato...

Per l inserimento è simile pure, lo avevo creato prima, insert into... e mi ha caricato i valori nel db.

Fatto e che voglio collegare nel miglior modo possibile le varie pagine php.

Login -> Area Riservata-> Seleziona opzioni

Opzione 1 -> Inserimento
Opzione 2 -> Ricerca

Tutte queste pagine accedibili solo dopo aver effettuato errore altrimenti mostra un errore e ti fa il redirect al login.php dopo 5 secondi

Qualcosa di simile da inserire nella pagine riservate?

PHP:
<?php
session_start();
if (!session_is_registered('autorizzato')) {
  echo "<h1>Area riservata - accesso negato</h1>";
  die;
}
?>


dipende da come vuoi strutturare la cosa..
Credo che tu abbia gestito tutto con 3 pagine html con sotto 3 porzioni di codice php.
Potevi anche fare una single web page application però era un pò più complicato gestirla.

tu fai la login con utenti che esistono già nel db...
e li fai una select come query e se il valore c'è con il result set ottenuto fai l'autenticazione in una seconda pagina.

nella ricerca fai una cosa similare
 
a di simile da inserire nella pagine riservate?

PHP:
<?php
session_start();
if (!session_is_registered('autorizzato')) {
  echo "<h1>Area riservata - accesso negato</h1>";
  die;
}
?>

è corretto, devi lavorare con le sessioni di php.

Nella pagina di login registri la sessione con il comando $_SESSION
Successivamente, dopo il session_start(), in ogni pagina "riservata" fai il controllo sulla variabile di sessione precedentemente settata (solitamente uso un if(isset($_SESSION ......))
Se questa variabile non è stata settata, riporti l'utente alla pagina di login.
Chiaramente quando l'utente farà logout ricordati di "distruggere" la sessione con session_destroy(); oppure con un unset.

Fai riferimento al manuale, è molto intuitivo e semplice PHP: $_SESSION - Manual e PHP: session_start - Manual
 
Ultima modifica:
scusa se ti rompo eh, ma cercare su google come caricare form dati php non da risultati o guide?
premetto che non uso php perchè è obsoleto in università non se lo calcolano più da anni però mi pare strano che non trovi una guida da seguire.

comunque per la ricerca dati dovrai mandare un parametro che poi eseguirà una query e ti restituirà il risultato ad esempio

Codice:
Select nome_tecnico from tecnici where nome_tecnico LIKE %'ABC'% 

e questa query ti darà un ritorno con i dati presenti nel db che iniziano con quel nome e poi dovrai stamparli nel tuo oggetto

Che linguaggi studi all'università? Ingegneria o informatica?
 
Che linguaggi studi all'università? Ingegneria o informatica?

a dire il vero l'università l'ho finita e lavoro.
Comunque Java(come linguaggio principale x sviluppare app client-server o web-app) inserimento di javascript jquery ajax mustache,
android(anch'esso java)
dbms(mysql, postgresql)

poi a lavoro purtroppo sono tornato indietro di tecnologie e uso
asp.net vb.net
 
Login.php

PHP:
<!DOCTYPE html><html>  <head>    <meta charset="UTF-8">    <title>Area Riservata | Autenticati</title>            <link rel="stylesheet" href="css/style2.css">      </head>
  <body>
<?phpsession_start();
function Open($dbname) {
   $con = new mysqli("127.0.0.1","root","",$dbname);
   if ($con->connect_errno) {     echo "<h2>".$con->connect_error."</h2>";     exit();   }   else                 return $con; }
 function Query($con,$sql) {    $res = $con->query($sql);       if (!$res)              echo "<h2>".$con->error."</h2>";            return $res; }
 function Close($con) {    $con->close();    }
if ($_SERVER['REQUEST_METHOD'] == 'POST')  {             $username = $_POST['username'];         $password = $_POST['password'];
         $mysql = Open("catdb");         $sql = "SELECT ID_Tecnico, Nome, Cognome                 FROM tecnico                 WHERE Username= '$username' && Password='$password'";         $rs = Query($mysql, $sql);         Close($mysql);           if ($rs->num_rows == 1) {                   $obj = $rs->fetch_object();                $_SESSION['id_tecnico'] = $obj->Id_Tecnico;                $_SESSION['nome'] = $obj->Nome;                $_SESSION['cognome'] = $obj->Cognome;                                     header("Location: areariservata.php");                 }     else  {        echo "<div class='container'>
  <div class='login'>
      <h1 class='login-heading'>
      <strong>Dati errati!</strong> Torna indietro.</h1>
    <button class='btn btn--right' onclick='history.back()'> Indietro </button> 
    </div></div>";    }          } else
echo "
<div class='container'>
  <div class='login'>
      <h1 class='login-heading'>
      <strong>Benvenuto.</strong> Autenticati.</h1>
<form method='post' action='" . $_SERVER['PHP_SELF'] ."'>
        <input type='text' name='username' placeholder='Username' required='required' class='input-txt' />
          <input type='password' name='password' placeholder='Password' required='required' class='input-txt' />                     <button type='submit' class='btn btn--right'>Entra</button>              </div>      </form>
</div></div>";
?>
  </body></html>

inserimento dati nel db... mi da il seguente errore:

Notice: Trying to get property of non-object in C:\xampp\htdocs\input.php on line 54 (l'inserimento però avviene...)

PHP:
<!DOCTYPE html><html>  <head>    <meta charset="UTF-8">    <title>Area Riservata | Autenticati</title>            <link rel="stylesheet" href="css/style2.css">      </head>
  <body>
<?phpsession_start();
function Open($dbname) {
   $con = new mysqli("127.0.0.1","root","",$dbname);
   if ($con->connect_errno) {     echo "<h2>".$con->connect_error."</h2>";     exit();   }   else                 return $con; }
 function Query($con,$sql) {    $res = $con->query($sql);       if (!$res)              echo "<h2>".$con->error."</h2>";            return $res; }
 function Close($con) {    $con->close();    }
if ($_SERVER['REQUEST_METHOD'] == 'POST')  {                $data_intervento = $_POST['data_intervento'];    $intervento_da = $_POST['intervento_da'];    $intervento_a = $_POST['intervento_a'];    $costo = $_POST['costo'];    $descrizione = $_POST['descrizione'];
         $mysql = Open("catdb");         $sql = "INSERT INTO intervento(data_intervento,intervento_da,intervento_a,costo,descrizione)                 VALUES('$data_intervento','$intervento_da','$intervento_a','$costo','$descrizione')";         $rs = Query($mysql, $sql);         Close($mysql);           if ($rs->num_rows == 1) {                   $obj = $rs->fetch_object(sql);                $_SESSION['data_intervento'] = $obj->data_intervento;                $_SESSION['intervento_da'] = $obj->intervento_da;                $_SESSION['intervento_a'] = $obj->intervento_a;                $_SESSION['costo'] = $obj->costo;                $_SESSION['dettagli'] = $obj->dettagli;     }     else  {  
      echo "<div class='container'>
  <div class='login'>
      <h1 class='login-heading'>
      <strong>Dati Inseriti.</strong> Torni indietro?</h1>
    <button class='btn btn--right' onclick='areariservata.php'> Indietro </button> 
    </div></div>";    } 
} elseecho "

<div class='container'>
  <div class='login'>
      <h1 class='login-heading'>
      <strong>Ciao!</strong><br> Inserisci una riparazione effettuata.</h1>
<form method='post' action='" . $_SERVER['PHP_SELF'] ."'>
        <input type='date' name='data_intervento' id='camponumerico' placeholder='Data Intervento' required='required' class='input-txt' />
    <input type='text' name='intervento_da' id='camponumerico' placeholder='ID Tecnico' required='required' class='input-txt' />
        <input type='text' name='intervento_a' id='camponumerico' placeholder='ID Cliente' required='required' class='input-txt' />
    <input type='text' name='costo' id='camponumerico' placeholder='Costo ex. 10.00' required='required' class='input-txt' />    <input type='text' name='descrizione' placeholder='Descrizione' required='required' class='input-txt' />                         <button type='submit' class='btn btn--right'>Inserisci</button>              </div>      </form>
</div></div>";?>
  </body>

<script type=text/javascript>function isNumeric(n) {return !isNaN(parseFloat(n)) && isFinite(n);}function validaIlTuoCampoNumerico() {if (!isNumeric(document.getElementById("camponumerico").value)) {document.getelementbyid("Placeholder").innerHTML = "Hai inserito un valore non numerico!";}}</script></html>

ricerca.php (errato... ho scritto cavolate che non servono...)

PHP:
<!DOCTYPE html><html>  <head>    <meta charset="UTF-8">    <title>Area Riservata | Autenticati</title>            <link rel="stylesheet" href="css/style2.css">      </head>

  <body>
<?phpsession_start();
function Open($dbname) {
   $con = new mysqli("127.0.0.1","root","",$dbname);
   if ($con->connect_errno) {     echo "<h2>".$con->connect_error."</h2>";     exit();   }   else                 return $con; }
 function Query($con,$sql) {    $res = $con->query($sql);       if (!$res)              echo "<h2>".$con->error."</h2>";            return $res; }
 function Close($con) {    $con->close();    }
if ($_SERVER['REQUEST_METHOD'] == 'POST')  {             $id_cliente = $_POST['id_cliente'];         $nome = $_POST['nome'];     $cognome = $_POST['cognome'];     $telefono = $_POST['telefono'];              $mysql = Open("catdb");         $sql = "SELECT ID_Cliente, Nome, Cognome, Telefono                 FROM cliente                 WHERE ID_Cliente= '$id_cliente' && Nome='$nome' && Cognome='$cognome' && Telefono='$telefono'";         $rs = Query($mysql, $sql);         Close($mysql);           if ($rs->num_rows == 1) {                   $obj = $rs->fetch_object();                $_SESSION['id_cliente'] = $obj->ID_Cliente;                $_SESSION['nome'] = $obj->Nome;                $_SESSION['cognome'] = $obj->Cognome;                $_SESSION['telefono'] = $obj->Telefono;                             echo"        <div class='container'>        <div class='login'>
            <h1 class='login-heading'>
        <strong>Cliente Trovato!</strong> Ecco i dati.</h1><br><br></div>        <table class='tabcss'>                    <tr>        <td>ID </td>        <td>$id_cliente</td>        </tr>                <tr>        <td>Nome </td>        <td>$nome </td>        </tr>        <tr>        <td>Cognome  </td>        <td>$cognome </td>        </tr>        <tr>        <td>Telefono </td>        <td>$telefono </td>        </tr>
        </table>        <button class='btn btn--right' onclick='history.back()'> Indietro </button>        </div>";        }     else  {        echo "<div class='container'>
  <div class='login'>
      <h1 class='login-heading'>
      <strong>Non ho trovato nulla!</strong><br> Torna indietro.</h1>     <button class='btn btn--right' onclick='history.back()'> Indietro </button> 
    </div></div>";    }          } else
echo"
<div class='container'>
  <div class='login'>
      <h1 class='login-heading'>
      <strong>Ricerca Intervento.</strong><br> Inserisci i dati.</h1>
<form method='post' action='" . $_SERVER['PHP_SELF'] ."'>
          <input type='text' name='id_cliente' placeholder='ID Cliente' required='required' class='input-txt' />
    <input type='text' name='nome' placeholder='Nome'id='max' required='required' class='input-txt' />    <input type='text' name='cognome' placeholder='Cognome' id='max' required='required' class='input-txt' />    <input type='text' name='telefono' placeholder='Telefono' id='max' required='required' class='input-txt' />                         <button type='submit' class='btn btn--right' onclick='checkLength()'>Cerca</button>              </div>      </form>
</div></div>";
?>

  </body><script type=text/javascript>function checkLength{if(document.getelementbyid("max").value > 10){        document.getelementbyid("Placeholder").innerHTML = "Hai inserito piu di 10 campi";}}</script></html>

Li ho fatti editandoli tra loro, e funzionano... qualcuno può aiutarmi per migliorarli o eventualmente rimuovere cose inutili?
 
Ultima modifica:
Università che dice che PHP è un linguaggio ormai superato ? boh
è il futuro ed è la base per la programmazione OPEN SOURCE anche per JAVA.
 
Università che dice che PHP è un linguaggio ormai superato ? boh
è il futuro ed è la base per la programmazione OPEN SOURCE anche per JAVA.


si ma sto ragazzo ha bisogno di una mano per il PHP non per rispondere a ciò che a me è stato insegnato.
Io non posso dargli una mano perchè non conosco tale linguaggio e non ho tempo per apprenderlo.
E' chiaro che ogni professore ha le sue preferenze e dica ciò che pensa e voglia.
La mia facoltà è improntata su Java e del php se ne fregano.
Ho scritto sopra cosa mi è stato insegnato come linguaggio in 3 anni considerando che poi ci sono corsi teorici.
Siccome siamo sulla sezione programmazione web e questo ragazzo ha postato del codice se conosci php dagli una mano.
 
Concordo con @Skills07, restiamo in tema e, se siamo in grado, diamo una mano please.
 
Ma volentieri se non fosse per il fatto che questo forum quando racchiudi codice ordinato in [ php ] [ / php ] lo sfracella e tende di mettere tutto su una riga.
Per aiutarlo dovrei :

1 . Riordinare il codice e sono 3 file
2 . Capire cosa ha scritto nel codice.
3 . Per vedere il funzionamento corretto, dovrei mettere su un DB mysql.

Posso saltare il punto 2 e 3, ma almeno "e questo lo chiedo ai moderatori" fate aggiustare sto fatto che sfracella il codice e lo scritto anche in un post di questo forum senza che nessuno si degnasse di 1 risposta.
 
Posso saltare il punto 2 e 3, ma almeno "e questo lo chiedo ai moderatori" fate aggiustare sto fatto che sfracella il codice e lo scritto anche in un post di questo forum senza che nessuno si degnasse di 1 risposta.

Mi scuso a nome dello staff per non aver dato nessuna risposta.
Stiamo effettuando il passaggio a nuova piattaforma e le cose saranno nettamente migliori.
 
Ma volentieri se non fosse per il fatto che questo forum quando racchiudi codice ordinato in [ php ] [ / php ] lo sfracella e tende di mettere tutto su una riga.
Per aiutarlo dovrei :

1 . Riordinare il codice e sono 3 file
2 . Capire cosa ha scritto nel codice.
3 . Per vedere il funzionamento corretto, dovrei mettere su un DB mysql.

Posso saltare il punto 2 e 3, ma almeno "e questo lo chiedo ai moderatori" fate aggiustare sto fatto che sfracella il codice e lo scritto anche in un post di questo forum senza che nessuno si degnasse di 1 risposta.

Mettiamoci al lavoro, ti posto i codici su pastebin cosi sono ordinati meglio..
 
Stato
Discussione chiusa ad ulteriori risposte.
Pubblicità
Pubblicità
Indietro
Top