Programmazione PHP postato il 13/04/2009 18:24:30 nel forum programmazione, gdrcd, open source, hosting
Allora, premetto il fatto che sono un novellino nella programmazione e che mi ci sto mettendo con calma per tutto quel che ne riguarda, in una pagina non riesco a capire l'errore.
Qui sotto ve la copio e vi spiego poi ciò che non va
<? session_start();
include ("inc/parametri.inc.php");
include ("inc/open2.php");
#echo "<font color=white>Stiamo finendo la riprogrammazione dell'iscrizione!<br>Potrebbero verificarsi degli errori o imprecisioni nella scheda del Personaggio</font>";
If (($HTTP_SESSION_VARS['OKSesso'] == "")
|| ($HTTP_SESSION_VARS['OKNome'] == "")
|| ($HTTP_SESSION_VARS['OKEmail'] == "")) {
$HTTP_SESSION_VARS['errore'] = "<b>ERRORE! Dati incompleti!</b>";
#header("Location: iscrizione1.php", false);
echo $HTTP_SESSION_VARS['errore']."<br>";
echo $HTTP_SESSION_VARS['OKSesso']."<br>";
echo $HTTP_SESSION_VARS['OKNome']."<br>";
echo $HTTP_SESSION_VARS['OKEmail']."<br>";
exit();
}
include("inc/controlloesilio.php");
$MySql = "Select Nome FROM Pg Iscritti WHERE Nome = '$OKNome' or Email = 'OKEmail'";
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {$HTTP_SESSION_VARS['errore'] .= "Il personaggio ".htmlspecialchars($OKNome)." è già presente o l'email è già utilizzata!<br>";};
$rs->close;
if ($HTTP_SESSION_VARS['errore'] != "") {
$RegNome = $HTTP_SESSION_VARS['OKNome'];
$RegEmail = $HTTP_SESSION_VARS['OKEmail'];
$RegSesso = $HTTP_SESSION_VARS['OKSesso'];
echo $HTTP_SESSION_VARS['errore'];
#header("Location: iscrizione1.php", false);
exit();
}
function Lettera() {
mt_srand((double)microtime()*1000000);
return(chr(mt_rand(0, 24) + ord("A")));
}
$pass = Lettera();
$pass .= Lettera();
$pass .= Lettera();
$pass .= Lettera();
$pass .= Lettera();
$pass .= Lettera();
$pass .= Lettera();
$pass .= Lettera();
$MySql = "INSERT INTO Personaggio (Nome, Pass, DataIscrizione, Mente, Forza, IDRazza, Sesso, Email, URLImg, Banca, MaxMente, MaxForza, ICQ, Affetti, Capacita, DataUltimaGilda) ";
$MySql .= "VALUES (";
$MySql .= "'$OKNome'";
$MySql .= ", '$pass'";
$MySql .= ", NOW()";
$MySql .= ", '".strtolower($OKSesso)."'";
$MySql .= ", '".$OKEmail."'";
$MySql .= ", 'img/stemmi/spacer.gif'";
$MySql .= ", '-'";
$MySql .= ", '-'";
$MySql .= ", '-'";
$MySql .= ", NOW()";
$MySql .= ")";
$Result = mysql_query($MySql);
$StrBody = "Benvenuto! E' stato registrato il personaggio ".$OKNome.chr(10);
$StrBody .= "La password per l'accesso è $pass".chr(10).chr(10);
$StrBody .= "Si consiglia di seguire le istruzioni, l'Atto di Costituzione, gli Editti e le Leggi (i link sono all'interno del gioco).".chr(10).chr(10);
$StrBody .= "Se non sai cos'è un Gioco di Ruolo, dai un'occhiata a questa pagina: ".$par_SiteURL."/info/gdr.html".chr(10).chr(10);
$StrBody .= $par_WebmasterEmail.chr(10).chr(10)."Entra nel gioco!";
$target=$OKEmail;
$subject = $par_SiteName.' - Registrazione di '.$OKNome;
mail($target, $subject, $StrBody, 'From: '.$par_WebmasterEmail);
include ("inc/header.html.inc.php");
?>
<title><?= htmlspecialchars($par_SiteName) ?> - Iscrizione</title>
</head>
<body topmargin="0" leftmargin="10" bgcolor=#333333>
<br>
<br>
<center><font class=titolo><?= htmlspecialchars($par_SiteName) ?> - Iscrizione Terminata!</font><br>
<br>
<br>
<table cellpadding=0 cellspacing=0 border=0 width="600">
<tr>
<td valign=top align=center><table><tr>
<td>
<center><b>Nome del Personaggio</b></center>
<BR>
<center><font class=titolo><?= $OKNome ?></font></center>
<BR>
</td>
</tr></table></td>
<td valign=top align=center><table><tr>
<td>
<center><b>E-mail di riferimento</b></center>
<BR>
<center><font class=titolo><?= $OKEmail ?></font></center>
<BR>
</td>
</tr></table></td></tr>
<td colspan=2>
<? if ($errore != "") { ?>
<?= $errore ?>
<? } else { ?>
Ti è stata inviata una e-mail con la password di accesso del personaggio.</b><br><br>
Se la e-mail non dovesse arrivare entro un tempo ragionevole (1-2 ore):
<li> tentare di recuperare la password tramite il modulo "recupera password" raggiungibile dalla home page;
<li> scrivere a <a href="mailto:<?= $par_WebmasterEmail ?>"><?= $par_WebmasterEmail ?></a>.</li><br>
<u>Non tentare di inserire la password prima di riceverla!
Dopo un certo numero di tentativi falliti la postazione potrebbe essere bloccata!</u><br><br>
<? }
$Errore = ""; ?>
</td>
</tr>
<tr>
<form name="nonaccetto" action="index.php" target="_top" method="POST">
<td colspan=2 align=center><br><INPUT TYPE="Submit" VALUE="Torna alla pagina iniziale" id=Submit3 name=Submit3></td>
</form>
</tr>
</table>
</center>
</body>
</html>
Allora, in questa pagina per adesso ho riscontrato 2 errori di funzionamento.
1° = Quando io vado a scegliere il sesso, Maschio o Femmina, nella pagina che mi vien data dopo, qualunque sesso io scelga, mi da Femmina.
2°= All'ultima pagina di iscrizione dice che ci sono dei dati mancanti, nonostante abbia inserito tutto ciò che richiedo.
Pagine → 1
13/04/2009 20:34:59 e modificato da kamato il 13/04/2009 20:36:47
Da quello che ho potuto capire è il file di GDRCD-EXTREME .. e sono tenuto ad informarti che è basata sulla versione di php numero 4 .. e dato che molti servizi di hosting hanno già effettuato il cambio alla versione 5,forse potrei dirti che il codice non gira molto bene,o comunque ci sono molti più erorri di sintassi di quelli che ti aspetti.
Io ti consiglio di studiarti bene php,magari iniziando da qualcosa di più facile tipo il linguaggio C che come sintassi è simile al php.
Saluti. 😎
14/04/2009 00:25:57
Che il C sia più facile del PHP è un po' una sparata, ma comunque...
La situazione è semplice: devi controllare il form e prova a stampare (tramite echo) la query prima di passarla al database; per l'altro problema cerca di vedere se tu non abbia modificato nulla.
Ti ricordo inoltre che se, per esempio, hai i cookie disabilitati, le variabili di sessione non funzionano e quindi va tutto a quel paese :D
Prova a smanettarci un po', tanto il gdr-cd è fatto apposta, praticamente, per smanettarci :P
14/04/2009 01:10:47
14/04/2009 01:40:14
già solo il fatto di dover dichiarare le variabili, e quindi avere un'idea su che cosa si deve fare e cosa serve per farlo bhè.. rende programmare in C un pò più complesso. Quindi non mi pare sia "più semplice" :D
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Pirates of the Caribbean: Tides of War: Quarti di finale del torneo
DarkOrbit: Galactic Strife & Buono gratis 💥
Enlisted → Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
I dati del generatore di rank sono stati aggiornati!
Legacy of Magic: Il vecchio e la mappa
outrunstaff ha risposto alla discussione: Project OutRun PbC
meleys ha aperto un annuncio di ricerca: Westeros GDR ricerca Tester
Metin2 → Sfida i tuoi rivali a battersi con te e dimostra la tua superiorità in questo mondo fantasy!
Lineage II: Black Friday di Lineage II
Il gestore di Ultima Espiazione Gdr ha risposto alla recensione di mancoicani
zannata ha recensito Sigil - La Città dei Portali
NosTale → Con l’aiuto della spada e della bacchetta magica risolverai abilmente intricate missioni e domerai coraggiosamente mostri selvaggi!
Sea of Conquest: Tuffati nel mistero! 🌊
Pirates of the Caribbean: Tides of War: Evento di Ringraziamento!
Fervm: Aggiornamenti: Il Diario!
Hero Wars: Arrivano le Teenage Mutant Ninja Turtles! :-D
World of Tanks → Lanciati in epiche battaglie spalla a spalla con altri giocatori. Conquista la supremazia nel mondo dei Carri Armati!
Armi Bianche - Passando tra le diverse classi analizzeremo particolarità ed usi delle diverse armi in voga!
Piume Nere - Recensione del gdr horror "Piume Nere - Abisso di Lazarus - England"... entra nell'incubo!
Il Monaco - La nuova classe Monaco: Dungeons and Dragons e i Cinesi!
Omeyocan - Intervista allo staff dell'oscuro GdR by chat Omeyocan
Starfleet Headquarters - Recensione del play by chat a tema Star Trek: Starfleet Headquarters
Google Search Console - Google Search Console: cos'è e come usarla per i vostri giochi!