Dubbio Php! postato il 17/07/2009 18:08:45 nel forum programmazione, gdrcd, open source, hosting
Ragazzi volgio fare il giornale del mio gdr con tutte le cose che accadono on nel gioco allora ho questo form creato da me( non badate alla grafica inesitenete):
<html>
<head> Inserisci la tua cronaca </head>
<body>
<form action="pagina_d'arrivo.php" method="post">
<table>
<tr><td>Giornalista:</td><td><input type="text"
name="Nome"></td><tr>
<tr><td>Codice:</td><td><input type="text" name="Codice"></td><tr>
<tr><td>Titolo:</td><td><input type="text" name="Titolo"></td><tr>
<tr><td>Data:</td><td><input type="text" name="Data"></td><tr>
<tr><td>Testo:</td><td><input type="text" name="Testo"></td><tr>
<tr><td colspan="2"><input type="submit" value="Inserisci"></td><tr>
</table>
</form>
</body>
</html>
e poi ho la pagina in cui dovrei stampare le cose scritte in precedenza; vorrei che solo scrivendo un determinato numero nella Casella Codice stampasse l'articolo e non sò come scrivere la condizione nella parentesi di fianco al costrutto di controllo if; eccovi il codice php:
<html>
<head> Cronache dalla "nome gdr"</head>
<body>
<?php
if()
{
print("<h2>Giornalista: $_REQUEST[Giornalista]</h2>
")
print("<h3>Titolo: $_REQUEST[Titolo]</h3>
")
print("<h3>Data: $_REQUEST[Data]</h3>
")
print("<h3>Testo: $_REQUEST[Testo]</h3>
")
}
else
{
print("<h2>Non sei adetto a scrivere articoli<h2>
")
?>
</body>
</html>
grazie dell'aiuto
Pagine → 1
17/07/2009 18:34:19
Non ho ben capito... tu vorresti che un giocatore con la "qualifica" di giornalista possa scrivere queste cronache? E' un po'confusionaria come richiesta! Il campo "codice" per che cosa sta? E' il codice dell'articolo? Il codice del giornalista? Che cippa è!? :-D
Ad ogni modo devi innanzitutto fare dei controlli sulle variabili mandate dalla pagina col form (intendo, se sono stati scritti i campi). Questo lo puoi fare con una serie di if(!($_REQUEST['titolo'])) ecc ecc. all'inizio dello script, ma probabilmente non è quello che ti serve! Ti spiegheresti meglio?
17/07/2009 18:54:54
Scusate se non mi sono ben spiegato allora vorrei che una pg scrivendo solo un determinato codice scelto da me e comunicato solo a quel pg possa pubblicare l'articolo capito?? Cioè l'articolo potrebbe essere pubbliccato scrivendo solo un determinato codice nell'apposito form!
17/07/2009 18:56:30 e modificato da kamato il 17/07/2009 18:56:56
Ahh .. tipo quando uno si registra un contatto msn,che prima che sia inviata la richiesta c'è un campo con un codice da compilare .. intendi questo?
17/07/2009 18:58:55
no, neanche kamto cioè io vorrei un codice sempre fisso che sappiano solo alcuni pg e solo scrivendo quel codice sia possibbile pubblicare l'articolo|
17/07/2009 19:01:21
quindi se uno di quei giocatori lo dice a un altro giocatore anche quello potrà pubblicare.
Pericolosetto :)
17/07/2009 19:07:22
se no come potrei fare potrei fare che solo alcuni appertenenti a quella gilda possano scrivere scrivendo come condizione che solo quella gilda con l'id prefissato possano scrivere. Però l'unica cosa che non sò tradurlo in linguaggio php. nel manuale che ho letto non trattava di questa cosa
17/07/2009 19:22:35 e modificato da stoneragon il 17/07/2009 19:27:21
Allora... Se ho capito quello che vuoi fare puoi fare in 2 modi...
O assegni una tabella nel db dove metti tutto l'elenco dei codici che è possibile scegliere, oppure più semplicemente assegni ad una variabile il codice, poi nell'if fai il confronto.
$codice_esatto="ciao";
[...]
if ($_POST[codice] == $codice_esatto ) {
[...]
}
dove ci sono i [...] ci va il tuo codice.
Non sono soluzioni ottimali però, dovrebbero andare..
I _POST e i _REQUEST sarebbe meglio farli ad inizio pagina... E sarebbe meglio usare sempre i _POST per le variabili passate tramite metodo post e i _GET per quelle passate tramite metodo _GET..
Se no uno può manipolare la pagina troppo facilmente...
Spero di non aver detto delle cavolate, e spero di aver capito quello che vuoi fare..
Edit per:
Ho letto ora il tuo messaggio.
Se vuoi fare che solo una certa gilda possa scrivere ti basterà guardare nella tabella personaggio l'id della gilda e fare il confronto se è uguale a quello della gilda che può scrivere..
cioè, esempio:
fai una SELECT nel DB e selezioni il campo "id_gilda" dove il nick è uguale al nick dell'utente.
Poi, fai:
if ($id_gilda == $id_della_gilda_che_puo_scrivere ) {
fai quello che devi fare
} else {
echo "Non hai i permessi";
}
è questo che intendi?
P.s. Il codice come l'ho scritto non è correttissimo è da adattare al tuo gdr naturalmente ^^
17/07/2009 21:11:44
Quoto faber... anche se io scriverei su file al posto di infilare fuffa nel db. Per il controllo puoi fare controlli incrociati non solo sull'id, ma anche sul nome del pg, sull'ip della connessione, sull'id della gilda... persino sul browser con cui il player naviga, non so se mi spiego :) E il tutto in una riga di codice:
if(cond1 && cond2 && ... && condN){
scriviArticolo();
}
P.S. Queste cose sono molto basilari, forse dovresti approfondire le tue conoscenze riguardo le risoluzioni di algoritmi.
18/07/2009 11:40:16
io questa funzione la comporrei in 3 pagine se fossi in te xD
1° pagina
-effettui il controllo se l'articolo può essere scritto o meno-
2° pagina
-input che manda i dati magari scritti anche in html per avere un "effetto grafico" maggiore anche nella lettura-
3° pagina
-controllo se i dati sono sicuri/corretti o meno.Se sono sicuri/corretti la scrittura ha successo,in caso contrario il ciclo riparte così anche per rivedere l'articolo senza poi creare una 4° pagina per interaggire sui dati.-
Magari nella pagina di scrittura inserisci un "editor" fatto in Javascript, ma uno di quelli che non permette l'inserimento di dati pericolosi, così il codice subirà più "controlli".
Perché da quel che ho capito tu vorresti lavorare direttamente da una singola pagina dove a parer mio non ottieni un controllo maggiore o uguale di quello che potresti avere usando altri metodi(uno di questi l'ho "spiegato" sopra).
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum


Road to Hamartia: CONTEST: Play it like you mean it
cassidy_myers ha aperto una nuova discussione: MUD nel 2025
Storie di Agarthi → Un Varco si apre davanti a te, un mondo tra i mondi è a portata di mano. Lasciati alle spalle le certezze, inizia l'avventura!
Contractors GdR: [Focus Razza] Rhoro
Lineage II: Il server #LineageIISamurai è ora attivo!
World of Tanks: Terminator 2 - Il giorno del giudizio: T-832
flower ha recensito La Tana del Ladro
Lineage II → Entra in uno sconfinato mondo fantasy dominato da razze in contrasto tra loro. Scatena i tuoi poteri in uno dei Mmo più famosi al mondo!
I dati del generatore di rank sono stati aggiornati!
raccoonenjoyer ha recensito Salvation GDR
Felix Felicis GdR - Harry Potter GdR: L'eco di Ariana Silente
World of Warship: Il Comandante Aguirre si unisce alla flotta
Seconda Era → Vaste terre coperte di ombre e misteri, dove ogni eroe scrive la storia del Mondo di Eidel. Seconda Era, Play By chat
one of a kind ha aperto una nuova discussione: Aurandor
Contractors GdR: Nuova razza giocabile: Jin-Shi
Fabula Arcana: Il sipario di alza: Alfa-Test aperti a tutti
Hero Wars: Regalino da Electra! 🎁
Hero Wars → Costruisci la tua squadra di eroi leggendari e domina il campo di battaglia! Strategia, tattica e potenza si scontrano in questo RPG ricco di azione!
Mathram - Intervista al gestore di Mathram, play by chat fantascientifico
La Spada - Articolo sulla più usata arma nel GDR fantasy!
PhotoBucket Down! - L'armageddon dei Play by Forum: Photobucket, hosting per immagini, chiude e danneggia i play by forum!
Controversie Ai e PbC - Le controversie sull'uso delle intelligenze artificiali nei giochi Play by Chat!
Gaming Disorder - Gaming Disorder: L'organizzazione mondiale della sanità riconosce la dipendenza da videogiochi
Tipi di Giochi - Gilraen e Mantis ci spiegano le differenze, i pro e i contro delle varie tipolgie di giochi di ruolo online testuali
Recensioni Negative - Meglio non fidarsi delle recensioni negative.. lo dice la scienza!
