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
Metin2: Doppio evento: Caccia al tesoro e Altromondo!
eXtremelot: Navigare o... Volare?? :-)
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!
Games of Thrones Winter is Coming: Playoff dell'assedio di Grande Inverno
I dati del generatore di rank sono stati aggiornati!
Legacy of Magic: Gli Elementi Oscuri - La Nera Signora dell'Acqua
Il gestore di W40K Dathyar ha risposto alla recensione di dreamboy
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!
dreamboy ha recensito W40K Dathyar
Metin2: Live ora: Server Boost Yohara e Twitch Drop
Epic Wizardry RP: Changelog N. 4 - Epic Wizardry Rp
Sea of Conquest → Vivi un'avventura tra i mari! Dal cuore del Mare del Diavolo, un paradiso piratesco brulicante di magia, tesori e avventure, salperai verso l'ignoto!
drongo ha recensito Il Grande Blu
Pirates of the Caribbean: Tides of War: Quarti di finale del torneo
DarkOrbit: Galactic Strife & Buono gratis 💥
Legacy of Magic: Il vecchio e la mappa
Crossout → Tuffati nel mondo di Crossout, il gioco MMO d'azione post apocalittico! Costruisci le tue speciali macchine da combattimento!
Eden's Grace - Intervista ai gestori del play by chat sperimentale ad ambientazione post apocalittica Eden's Grace
Tip4Serv - Tip4Serv: il sistema di donazioni specifico per i giochi online!
Ambientazioni GDR - La quarta lista di ambientazioni non sfruttate dai gestori di giochi di ruolo. Utile per avere spunti per un nuovo gdr!
Cartoon Village - Video - Intervista ai gestori di Naruto World e One Piece Islands
Hero Forge - Hero Forge: crea le miniature personalizzate dei tuo personaggi!
Tolkien e Paganesimo - Tesi di laurea sul Paganesimo e Cristianesimo nell'opera di Tolkien