3 problemi / dimenticanze
3 problemi / dimenticanze postato il 14/05/2014 16:30:05 nel forum programmazione, open source e hosting
Ciao, spero di non aver infranto alcuna regola a postare un topic anche oggi. Ho cercato sul forum tutta mattina, ma non ho trovato nulla.
Premetto che ho studiato c# e qualche altro linguaggio, ma sono fermo da 5 anni e mi sono dimenticato moltissime cose. Ne elenco 3 di cui ho assolutamente bisogno.
1) Lavorando su gdrcd-5.1 , se io sono all'interno di una pagina e voglio andare a modificare le tabelle del database come faccio a collegarmi? Scrivo la query e tutto, ma non agisce.
2) Se io ho due input:
<input type=”text”><br>
<input type="submit" onClick="vogliochemiprendailvaloreinseritonell'altroinput dall'utente" </input>
come faccio quando si spinge il bottone appunto a prendere il valore inserito dall'utente salvandolo in una variabile? Inoltre in onClick= si può inserire del codice php?
3) Il bottone da cliccare, si può rendere invisibile ad alcuni utenti (in base ai permessi?)
Ringrazio tutti quanti, in anticipo
Pagine → 1
14/05/2014 17:33:35 e modificato da leoblacksoul il 14/05/2014 17:35:34
caesarvi ha scritto: 1) Lavorando su gdrcd-5.1 , se io sono all'interno di una pagina e voglio andare a modificare le tabelle del database come faccio a collegarmi? Scrivo la query e tutto, ma non agisce.
Come la scrivi? gdrcd ha la sua funzione gdrcd_query() per fare le query, se usi mysql_query() o mysqli_query() riceverai degli errori.
Sei sicuro di essere connesso al server del DB? Nel tuo topic di ieri avevi un errore che diceva che non eri connesso, l'hai risolto?
<input type=”text”><br>
<input type="submit" onClick="vogliochemiprendailvaloreinseritonell'altroinput dall'utente" </input>
come faccio quando si spinge il bottone appunto a prendere il valore inserito dall'utente salvandolo in una variabile? Inoltre in onClick= si può inserire del codice php?
Tutti gli input che devono essere inviati insieme devono stare dentro a un tag <form>, solo in questo modo verranno inviati insieme quando verrà premuto il submit. Non c'è bisogno di onClick.
Su PHP i dati inviati compariranno dentro agli array superglobali $_GET[] o $_POST[] in base alla tipologia di form che stai usando (la tipologia va scelta in base agli standard W3C sulle richieste HTTP)
Inoltre dovresti provare a leggere un tutorial su php e html. Non puoi usare codice PHP nel form semplicemente perchè php viene eseguito sul server, mentre HTML viene eseguito sul computer dell'utente che sta visualizzando il sito web.
3) Il bottone da cliccare, si può rendere invisibile ad alcuni utenti (in base ai permessi?)
Si, basta mettere un if attorno A TUTTO IL FORM in php. NON farlo in javascript, dato che javascript può essere manipolato dagli utenti e potrebbero facilmente aggirare il tuo blocco.
Inoltre lo stesso controllo che fai nell'if deve essere ripetuto anche nella sezione di codice php che gestisce i dati che arrivano da questo form, altrimenti il tuo codice sarà vulnerabile ad attacchi in cui un eventuale hacker potrebbe comunque eseguire il codice del form anche senza avere il permessi per farlo (vulnerabilità di tipo priviledge escalation).
14/05/2014 17:45:28
leoblacksoul ha scritto:
Come la scrivi? gdrcd ha la sua funzione gdrcd_query() per fare le query, se usi mysql_query() o mysqli_query() riceverai degli errori.
Sei sicuro di essere connesso al server del DB? Nel tuo topic di ieri avevi un errore che diceva che non eri connesso, l'hai risolto?
Intanto grazie per la disponibilità e le lunghe risposte.
Non era mio il topic che non ero connesso al database, comunque la mia domanda è proprio quella:
In un'altra pagina come faccio a connettermi al DB?
Cioè utilizzando gdrcd5.1 prima di fare una qualunque query es.
gdrcd_query(select * from tabella1 where nome = 'bellali')
come devo fare per connettermi al database in modo che la query funzioni, senza dimenticare nulla?
Per il resto è tutto chiaro, grazie
14/05/2014 22:26:54
Davvero non eri tu O.O svista magistrale!! XD
Dipende dalla pagina. Se ti trovi in una pagina di gdrcd nuova che stai scrivendo tu allora devi richiamare l'apposita funzione per connetterti al database. Se invece è una pagina di quelle che sono nella cartella pages/ allora è già tutto impostato.
La connessione viene fatta una sola volta, in un file solo per tutto il software e vale per tutte le pagine che seguono la logica di inclusione di gdrcd.
Se proprio vedi che non sei connesso (cosa strana! Perchè se tu non fossi connesso non appena cerchi di fare una query ti verrebbe fuori un errore bello grosso) dovresti chiamare la funzione gdrcd_connect()
15/05/2014 08:54:13 e modificato da caesarvi il 15/05/2014 12:34:10
Ho risolto, sei stato d'aiuto un bel pò!
Grazie mille...
L'ultimo problema che mi si è posto è il seguente.
Ho la tabella con la colonna gol fatti.
Se io uso:
<?php echo gdrcd_query("SELECT 'golfatti' FROM 'squadre' WHERE 'nomesquadra'= 'milan'"); ?>
su altervista phpmySql mi fa vedere:
GOL FATTI
13
nel sito mi scrive anzichè il numero: Array.
Ho pensato fosse dovuto al fatto che scrive anche goal fatti, allora ho provato a metterlo in una variabile e castarla INT (), ma poi mi da il valore 1 sempre e comunque e mai 13.
Come posso fare?
15/05/2014 19:42:15
Come indicato nella documentazione https://github.com/GDRCD/GDRCD/blob/master/includes/functions.inc.php#L57 ↗
Il metodo ritorna il primo record del resultset della query (in un array; è sott'inteso perchè è abbastanza ovvio se conosci php).
Dato che hai già visto che ti dice che è un array....perchè non fare un passo in più e provare a guardarci dentro? Le funzioni var_dump() e print_r() ti permettono di ispezionare gli array se non conosci i suoi contenuti.
Consiglio spassionato, leggiti almeno una guida base su php.
Il risultato è un array associativo, ogni campo del record è memorizzato di un elemento dell'array la cui chiave è il nome del campo sul database.
$risultato=gdrcd_query("SELECT 'golfatti' FROM 'squadre' WHERE 'nomesquadra'= 'milan'");
echo (int)$risultato['golfatti'];
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Project Entropy ↗
Hero Wars ↗
Fallen Gods ↗
AlterEgo ↗
Storie di Agarthi ↗
Neverness to Everness ↗