Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

Script php

Cerchi consigli per migliorare il tuo sito? Vuoi aprire un sito in poco tempo?
Discuti con altri webmaster, chiedi chiarimenti ed opinioni in tutta libertà.
Lo spam verrà cancellato.

Script php

Messaggioda thanas » ven mag 29, 2009 10:13 am

Salve a tutti vi posto il mio problema sperando di essere chiaro [:)]
Mi ritrovo con uno script in php di scacchi, ovvero il gioco online degli scacchi, in più un forum in phpbb3..
Il mio problema è che lo script per giocare mi chiede di creare un nuovo utente, io vorrei far in modo che l'utente registrato nel forum sia lo stesso per lo script php..
Ora pensando, se io inserisco nel login dello script il nick e pass del forum, che si trovano sullo stesso server, dovrebbe trovarmi gli stessi utenti del database del forum, visto che il database è uno solo...
facendo questo però mi da questo errore:

Codice: Seleziona tutto
Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/cata850/public_html/Sito/Forum/webchess/connectdb.php on line 7
WebChess cannot connect to the database. Please check the database settings in your config


Non trova il database, se guardo nel file connectdb.php trovo queso:

Codice: Seleziona tutto
<?
   /* load settings */
   if (!isset($_CONFIG))
      require 'config.php';
   
   /* connect to database */
   $dbh=mysql_connect ($CFG_SERVER, $CFG_USER, $CFG_PASSWORD)
      or die ('WebChess cannot connect to the database.  Please check the database settings in your config.');

   mysql_select_db ($CFG_DATABASE);
?>


come devo modificare per far in modo che trova il database??
spero d'aver reso l'idea [uhm]
Avatar utente
thanas
Neo Iscritto
Neo Iscritto
 
Messaggi: 7
Iscritto il: mer mag 27, 2009 9:53 am

Re: Script php

Messaggioda ste_95 » ven mag 29, 2009 1:34 pm

Sicuro che nel config.php le credenziali di accesso al database siano corrette?
«A volte è meglio tacere e sembrare stupidi che aprir bocca e togliere ogni dubbio.» Oscar Wilde
Avatar utente
ste_95
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 17271
Iscritto il: lun ago 06, 2007 11:19 am

Re: Script php

Messaggioda thanas » ven mag 29, 2009 2:52 pm

Ho guardato il file config.php, effettivamente cera qlcosa che non va, ho settato i parametri giusti (spero) e mi è uscito fuori quest'altro:
Codice: Seleziona tutto
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/cata850/public_html/Sito/Forum/webchess/mainmenu.php on line 35

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/cata850/public_html/Sito/Forum/webchess/mainmenu.php on line 109
Invalid Nick/Password


Ora la linea 35 di mainmenu è questa:

Codice: Seleziona tutto
while($tmpOldGame = mysql_fetch_array($tmpOldGames, MYSQL_ASSOC))


questa 109:

Codice: Seleziona tutto
$tmpPlayer = mysql_fetch_array($tmpPlayers, MYSQL_ASSOC);


io di php non sono proprio un fenomeno tu puoi avere idea del problema??
Avatar utente
thanas
Neo Iscritto
Neo Iscritto
 
Messaggi: 7
Iscritto il: mer mag 27, 2009 9:53 am


Re: Script php

Messaggioda ste_95 » ven mag 29, 2009 4:59 pm

Io di solito, quando mi capitano problemi di questo genere, cerco di capire dove sono i problemi nella query.

Quindi, sia nella variabile $tmpOldGames che nella variabile $tmpPlayers aggiungi quanto segue prima del punto e virgola finale:

Codice: Seleziona tutto
 or die(mysql_error())
«A volte è meglio tacere e sembrare stupidi che aprir bocca e togliere ogni dubbio.» Oscar Wilde
Avatar utente
ste_95
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 17271
Iscritto il: lun ago 06, 2007 11:19 am

Re: Script php

Messaggioda thanas » mer giu 03, 2009 9:51 am

Fantastico non ci avevo pensato!!!
ed ecco il problema:

Codice: Seleziona tutto
Table 'cata850_db.games' doesn't exist


effettivamente la tabella è solo cata850_db, e visto che dal config risulta essere tutto giusto immagino che quel .games me lo aggiunga qua:

Codice: Seleziona tutto
   /* cleanup dead games */
   /* determine threshold for oldest game permitted */
   $targetDate = date("Y-m-d", mktime(0,0,0, date('m'), date('d') - $CFG_EXPIREGAME, date('Y')));

   /* find out which games are older */
   $tmpQuery = "SELECT gameID FROM games WHERE lastMove < '".$targetDate."'";


però pensavo una cosa...io vorrei usare la stessa tabella del db che uso per il forum, tabella che è strutturata in modo diverso da quello che richiede lo script,visto che non l'ho scritto io, quindi ho mi modifico il codice dello script, quindi le query, in modo appropriato oppure mi conviene fare una nuova tabella...non so se ho reso l'idea
cosa consigli ste??
Avatar utente
thanas
Neo Iscritto
Neo Iscritto
 
Messaggi: 7
Iscritto il: mer mag 27, 2009 9:53 am

Re: Script php

Messaggioda ste_95 » mer giu 03, 2009 1:58 pm

thanas ha scritto:Fantastico non ci avevo pensato!!!
ed ecco il problema:

Codice: Seleziona tutto
Table 'cata850_db.games' doesn't exist

Quest'errore sta ad indicare che la tabella cata850_db nel database games non esiste. [;)]

però pensavo una cosa...
[cut]
non so se ho reso l'idea

Diciamo che ho capito tutto fino a "io vorrei usare la stessa tabella del db che uso per il forum" [rolleyes]
«A volte è meglio tacere e sembrare stupidi che aprir bocca e togliere ogni dubbio.» Oscar Wilde
Avatar utente
ste_95
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 17271
Iscritto il: lun ago 06, 2007 11:19 am

Re: Script php

Messaggioda dararag » mer giu 03, 2009 3:24 pm

scusa ste, ma la sintassi non è db.table? quindi è la tabella games che non esiste nel database cata850_db, o mi sbaglio?
Maledette aziende produttrici, l'unico telefilm interessante degli ultimi tempi l'hanno interrotto alla decima puntata... e chi voleva sapere la fine?
Avatar utente
dararag
Silver Member
Silver Member
 
Messaggi: 1116
Iscritto il: mar gen 22, 2008 8:57 pm
Località: Casoria

Re: Script php

Messaggioda ste_95 » mer giu 03, 2009 3:45 pm

dararag ha scritto:quindi è la tabella games che non esiste nel database cata850_db, o mi sbaglio?

E io che ho scritto? [;)]
«A volte è meglio tacere e sembrare stupidi che aprir bocca e togliere ogni dubbio.» Oscar Wilde
Avatar utente
ste_95
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 17271
Iscritto il: lun ago 06, 2007 11:19 am

Re: Script php

Messaggioda thanas » mer giu 03, 2009 3:45 pm

Diciamo che ho capito tutto fino a "io vorrei usare la stessa tabella del db che uso per il forum" [rolleyes]

Già sei stato bravo a capire fino a li [crylol]
comunque ho risolto, ora avrei un'altro problemino sempre sullo stesso script...
praticamente vorrei che gli utenti possano vedere e quindi sfidare solo gli utenti che sono loggati in quel momento,
mentre ora invece è possibile vederli tutti e iniziare una nuova partita anche se l'utente non è online in quel momento...

Questa è il codice che mi da tutti gli utenti:

Codice: Seleziona tutto
$tmpQuery="SELECT playerID, nick FROM players WHERE playerID <> ".$_SESSION['playerID'];
               $tmpPlayers = mysql_query($tmpQuery);

               while($tmpPlayer = mysql_fetch_array($tmpPlayers, MYSQL_ASSOC))
               {
                  echo ("<option value='".$tmpPlayer['playerID']."'> ".$tmpPlayer['nick']."</option>\n");
               }

               mysql_close();


Sapresti mica indicarmi la strada giusta x far quel descritto??
Avatar utente
thanas
Neo Iscritto
Neo Iscritto
 
Messaggi: 7
Iscritto il: mer mag 27, 2009 9:53 am

Re: Script php

Messaggioda ste_95 » mer giu 03, 2009 3:50 pm

Devi aggiungere alla query un WHERE nomecampochegestiscel'on-line=online [;)]
«A volte è meglio tacere e sembrare stupidi che aprir bocca e togliere ogni dubbio.» Oscar Wilde
Avatar utente
ste_95
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 17271
Iscritto il: lun ago 06, 2007 11:19 am

Re: Script php

Messaggioda thanas » mer giu 03, 2009 3:58 pm

ok quindi aggiungo un campo nella tabella e ad ogni login lo setto "online"...??
ma si può far qlcosa di simile con le sessioni??

ad esempio aggiungere un where $_SESSION['playerID'] != -1;
forse è quello che mi hai suggerito te ma se si in questo caso faccio un if non nella query giusto??
Avatar utente
thanas
Neo Iscritto
Neo Iscritto
 
Messaggi: 7
Iscritto il: mer mag 27, 2009 9:53 am


Torna a Sviluppo Web

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising