-
login e registrazione
Salve devo fare una pagina web per la maturità e devo fare il login e la registrazione e una volta fatto il login ti porta nella home del sito,il problema e che io di database non so nulla(trattatemi come uno ignorante)mi potreste dire come fare questo login e registrazione(con username,pass,email) con php,html e database,vi prego è importante.
-
Qui trovi molto materiale.
Se c'è qualcosa che non capisci chiedi pure.
Ciao!
-
lo dovrei fare sul sito stesso penso,nelle guide lo fa in localhost
-
Se è un progetto che devi realizzare per la maturità dovresti aver ricevuto tutte le informazioni di cui hai bisogno durante il corso delle lezioni, perlomeno per quanto concerne il procedimento generale.
Naturalmente può sempre succedere che ci siano dei dubbi specifici.
Il procedimento complessivo è più o meno questo:
- procurati o installa un web server che supporti PHP ed un database server su cui realizzare il progetto; se intendi realizzarlo nel tuo spazio AlterVista sei già a posto
- crea una tabella, nella base di dati, che rappresenti gli utenti
- crea un sistema di registrazione, in PHP; devi prevedere (almeno) la possibilità di inserire un nome utente ed una password per ogni nuovo utente, i dettagli dipendono dalle specifiche che ti sono state indicate
- crea un sistema di autenticazione, in PHP, in grado di verificare che una data coppia (nome utente, password) sia presente nella base di dati
- verosimilmente, in caso di autenticazione riuscita, utilizza una sessione PHP per gestire il ciclo di vita della sessione
Dunque, in quale/i punto/i riscontri problemi? :=):
-
il fatto è che i database non li abbiamo toccati quindi non so nulla,e ci vorrà un po per farli e il prof dice che siamo in ritardo per i progetti visto che non li abbiamo neanche iniziati,comunque si uso uno spazio altervista
-
Capisco, ma non è possibile creare un sistema di autenticazione basato su database senza utilizzare/conoscere i database (ovviamente :=):).
Ti è stata data una consegna o specifica per questo progetto? Se sì, potresti riportarla qui in modo da poterla leggere?
Altrimenti, credo sia opportuno chiedere conferma al professore che il progetto debba essere realizzato usando una base di dati e non, ad esempio, letture e scritture su file di testo.
-
ho due possibilità 1:creare una pagina web di ecommerce dove viene chiesto di effettuare la registrazione e successivamente il login,fatto il login vieni mandato sulla home dove puoi visualizzare gli oggetti venduti,cliccando sull'oggetto(l'oggetto deve essere un immagine)si devono vedere le sue info e la quantità rimasta.(per lo piu un magazzino,sembrerebbe)
2:una cantina di vini dove si deve effetturare il login e far vedere una lista di vini con i seguenti nomi,selezionando il vino richiesto si deve visualizzare le sue origini,eventuali date e la quantità rimasta,quando si va a selezionare compra(finto)la quantità rimasta deve scendere a -1.
Lui ci ha lasciasto queste traccie perchè credeva di riuscire a fare in tempo ma i giorni di laboratorio stanno saltando tutti.
per il database se c'è una guida precisa che si possa capire come creare un database che si collega alla paggina web(questa pagina web la devo fare qua molto probabilmente)
-
Anche per la connessione al database esistono numerose guide online (io stesso ho imparato tutto online).
Per il database attento che ci sono principalmente 3 tipi di modalità per interfacciarsi da PHP al database:
- Le vecchie funzioni mysql_ che non devi utilizzare perché sono obsolete
- Le funzioni mysqli_
- Tramite PDO
Puoi scegliere indifferentemente sia PDO che mysqli_; l'importante è non utilizzare le funzioni mysql_.
Per entrambe le scelte, sul web trovi una miriade di guide che spiegano bene l'utilizzo (esempio).
Come detto su, se hai qualche problema o non capisci qualcosa torna pure a chiedere qui.
Ciao!
-
-
Per imparare a conoscere MySQL sì.
Presta però attenzione al fatto che quella guida tratta "solo" l'utilizzo della base di dati vera e propria, non il modo con cui interfacciarsi ad essa tramite PHP (per il quale alemoppo ha già fornito un link).
-
Ciao ,
penso gli altri utenti ti abbiano già dato dei link per delle guide,
se posso esserti d'aiuto ti segnalo questo:
https://www.w3schools.com/php/php_mysql_intro.asp
qui è spiegato veramente bene parte da 0 e ti fa fare delle lezione con esempi pratici, a me è stato davvero utile.
-
Salve,in questi giorni ho studiato un pò riguardo al database,(lasciando perdere il login)credo che andrò verso la cantina,sullo spazio altervista,ho provato un pò a lavorare con il database(phpmyadmin),ho creato una tabella di nome magazzino e con il tasto inserisci ho inserito le varie informazioni(idfornitore,nome,telefono,indirizzo)a desso vorrei portare questa tabella su una pagina php,ho visto varie guide ma avevano tutti un modo diverso da fare e capivo poco,
il comando preciso per fare questo quale sarebbe?
-
Provale. Come ti ho detto ci sono diversi metodi (puoi usare o mysqli o pdo). In generale devi eseguire query (INSERT, SELECT, UPDATE) passandole tramite le funzioni che ho indicato.
Vedi ad esempio qui: https://www.w3schools.com/php/php_mysql_insert.asp
Ciao!
-
Ma questo connette solo il database alla pagina php o stampa anche la tabella?
E quando apre il php devo mettere i miei dati
-
Nel link che ti ha fornito alemoppo ci sono delle indicazioni per popolare una tabella, ovvero per inserirvi dentro dei dati.
Per quanto riguarda la "stampa", il processo si articola in [almeno] due passi: recuperare i dati dalla base di dati e, successivamente, mostrarli in un qualche formato e/o impaginazione. L'operazione di recupero si chiama select. Una volta recuperati, puoi stampare i dati in una pagina PHP.
-
ma per popolare i dati non lo posso fare direttamente su phpmyadmin?
Abbiate pazienza perchè io ci sto tanto per capire(e di questo vi ringrazio)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
questo lo devo lasciare cosi o devo mettere i miei dati quando faccio l'accesso?
$sql = "SELECT id, firstname, lastname FROM MyGuests"; qui devo mettere "select * from magazzino"(deve visualizzare tutta la tabella)
e questo pezzo non l'ho capito se noi selezioniamo con il select non dovrebbe darceli in stampa?
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
-
Esclusivamente per altervista devi inserire il database my_esami tutti gli altri campi sono opzionali.. http://it.help.altervista.org/w/Database_MySQL
SELECT campo FROM tabella
Questa sintassi estrae solo un determinato campo chiamato campo della tabella chiamata tabella.
La funzione fetch_assoc restituirà NULL se non ci sono più righe, questo valore NULL blocca l'avanzamento del while dato che avanza solo se TRUE (si usa per scorrere un array).
http://php.net/manual/en/mysqli-result.fetch-assoc.php
http://php.net/manual/en/control-structures.while.php
echo stampa l'output sul browser ma non in tutte le circostanze.. Ad esempio non stampa il NULL
http://php.net/manual/en/function.echo.php
Scusaci è difficile spiegare qualcosa se non possiedi almeno le basi di un linguaggio di programmazione o interpretato per php.
Esempio definizione variabile con valore
$var = 'ciao'; //variabile
/* esempio array */
$ciao = array('Marco','Giorgio'); //Qui sto creando le chiavi 0 e 1 con i valori che leggi
$ciao[0] = 'Marco'; //Qui sto sovrascrivendo la chiave 0 con il valore che leggi
$ciao[1] = 'Giorgio'; //Qui sto sovrascrivendo la chiave 1 con il valore che leggi
La creazione con le parentesi quadre è sconsigliata poiché basta una svista nel creare il codice che nei casi più gravi può rende vano tutto il lavoro effettuato.
-
Codice PHP:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 results";
}
$conn->close();
?>
questo lo devo copiare su una pagina php,cambio dbname con esami,il select devo mettere selec * from magazzino(deve visualizzare tutti i campi)
echo sarebbe quello che "vediamo" su una pagina php,cosa dovrei mettere?
questo è la foto del databasehttps://imgur.com/a/6HR2q
-
Già l'output lo prelevi dal database, quindi se deve prelevare e mostrare i dati da un database non dovrai aggiungere altro..
Si SELECT * FROM tabella l'asterisco è un jolly e significa tutti i campi della tabella di nome tabella..
Il database è solamente my_esami nota il prefisso my_ il codice php verrà eseguito solo in pagine con estensione .php (eccetto per alcune circostanze)
Ci sono quattro campi scegli tu cosa vuoi estrarre dalla basedati e cambi le chiavi di $row con il nome del campo iniziando da sinistra verso destra (il contenuto delle parentesi quadrate ... circondato inizialmente e la parte finale da uno di questi caratteri ' o ").
-
Codice PHP:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "my_esami";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM magazzino";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "id: " . $row["codicef"]. " - Name: " . $row["nome"]. " " . $row["numerot"]. " " . $row["indirizzo"]."<br>";
}
} else {
echo "0 results";
}
$conn->close();
?>
cosi?(lo sto facendo per ora il localhost qui c'è la foto del database https://imgur.com/a/ox0t2)
-
Lo hai provato? appare qualche errore?
Ciao!
-
si,questo:
Warning: mysqli::__construct(): (HY000/1045): Access denied for user 'username'@'localhost' (using password: YES) in C:\xampp\htdocs\databae\accesso.php on line 8
Connection failed: Access denied for user 'username'@'localhost' (using password: YES)
-
C'è qualche problema con le credenziali di accesso. Esiste quell'account nel database? Assicurati che la password sia corretta (su AlterVista puoi non immettere la password e il nickname coincide con il tuo "esami", ma in ambiente xampp in generale puoi configurarli quindi devi rispettare sia nickname sia password.
Ciao!
-
quando ho installato xampp non ho configurato nulla e non so dove prenderli questi dati
-
Dovresti aggiungere l'utente per il database, altrimenti quale nickname e password hai immesso?
In generale una ricerca su google potrebbe dare la soluzione. Se poi hai accesso a phpMyAdmin, dovresti poter crearlo tramite interfaccia grafica da lì.
Ciao!
-
https://veerasundar.com/blog/2009/01...ysql-in-xampp/ ti spiega anche come accedere su phpmyadmin... dunque devi creare il database my_esami puoi usare localhost root e password vuota
-
ok funziona,qui su altervista come dovrei fare
-
http://forum.it.altervista.org/php-m...ml#post1374563
Sintassi speciale che non contiene caratteri standard
Sql:
SELECT `id fornitore` FROM `my_esami`.`tabella`
Php:
$row = "SELECT `id fornitore ` FROM `my_esami`.`tabella `";
Editato per sintassi corretta :D
-
Perché i professori non sono mai contenti...... Adesso vuole un altra pagina dove io tramite delle textbox o cose simili inserisca i campi nella tabella magazzino sempre php e html... È fattibile?
-