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 Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Planethos GdR: Una nuova profezia
Storie di Agarthi → Un Varco si apre davanti a te, un mondo tra i mondi è a portata di mano. Lasciati alle spalle le certezze, diventa quello che hai sempre cercato.
Metin2: Informazioni sul server migliorate
Age of Crystals: Rallentamenti estivi
dbzgdr ha risposto alla discussione: Dragon Ball Z Gdr
Titan Revenge: Calendario eventi fino a fine mese online!
CRSED: F.O.A.D. → Brutale sparatutto MMO in cui vince l'ultimo giocatore che resta in vita nell'arena! Ogni giocatore sarà accompagnato da armi realistiche e magie!
Enlisted: Modifiche al sistema di aggiornamento
pyro72 ha aperto un annuncio di ricerca: World Without Heroes ricerca Giocatore
OGame → In OGame migliaia di giocatori da tutto il mondo competono tra di loro per conquistare l'intero universo!
World Without Heroes: News GDR: Pubblicazione e Nuovo Inizio
I dati del generatore di rank sono stati aggiornati!
Il gestore di Nexi Generation ha risposto alla recensione di deanna
Metin2 → Sfida i tuoi rivali a battersi con te e dimostra la tua superiorità in questo mondo fantasy!
Detective dell’Occulto - Who Ya Gonna Call? La lista di tutti i Detective dell’Occulto!
Dal gioco alla scrittura - Quante volte vi è venuta voglia di trasportare un'avventura giocata col vostro personaggio in un racconto? Ecco come farlo in 5 facili step!
Scarica EasyDoc - EasyDoc è un applicativo web che utilizza l'xml per gestire della documentazione di un GdR
Fervm - Intervista a Claudio creatore del play by chat ambientato nell'Antica Roma... Fervm!
Live Action Role Play - Analisi dell’attività ludica LARP per mettere in evidenza i suoi utilizzi come strumento terapeutico, didattico e di teambuilding
Forgotten Maps - Forgotten Maps: la mappa gratuita interattiva dei Forgotten Realms!