Per quanto riguarda la versione php 5.6 non c'è problema perché posso anche tenerlo non visibile fino a quando voglio.
Si, credo che si tratti di fare poche modifiche, perlomeno a livello di file (che sono 3), mentre a livello di codice non lo so, visto che non so quante stringhe devono essere modificate o aggiunte, comunque credo che si possa fare (ho visto discussioni piene di stringhe e codici quindi non credo sia un problema).
Per quanto riguarda come ho creato il sito la risposta è: Si, ho creato il sito prendendo pezzi di codice un po' qua e là e li ho messi insieme facendo in modo che funzionassero e che ognuno facesse il proprio compito. C'è però da dire che si tratta di un lavoro che ho fatto diverso tempo fa e quindi visto che non sono un programmatore o uno che lo fa tutti i giorni mi sia concesso essere un po in difficoltà nel destreggiarmi con queste cose.
Non ho disponibilità economica per acquistare i servizi che lei ha menzionato nel suo intervento, quindi mi sono dovuto arrangiare diversamente.
Detto questo, qui di seguito inserisco i codici dei file che penso debbano essere modificati e quindi anche il database. Si tratta di codici che non ho creato io ma che ho preso in giro e poi li ho assemblati. Qui di seguito inserisco solo la parte di codice in php (che è quella che ci interessa) senza il resto tipo codice html, css e altro.
Ecco i codici:
- File config.php
Codice PHP:
<?php
*/
require_once('./funzioni.php');
if(isset($_GET['captcha']))
{
session_start();
$testo = substr(stringa_random(),0,5);
$_SESSION['captcha'] = $testo;
$x = 100;
$y = 50;
$image = imagecreatetruecolor($x, $y);
$sfondo = imagecolorallocate($image,hexdec(substr(colore(),1,2)),hexdec(substr(colore(),3,2)),hexdec(substr(colore(),5,2)));
$nero = imagecolorallocate($image,0,0,0);
imagefilledrectangle($image, 0, 0, $x, $y, $sfondo);
imagettftext(
$image, //immagine
15, //dimensione carattere
rand(-5, 5), //angolo di rotazione
10+rand(-10,10), //offset sulla x
30, //offset sulla y
$nero, //colore
'./caratteri/arial.ttf', //font
$testo //da stampare
);
header("Content-Type: image/png");
imagepng($image);
}
else if(isset($_GET['logout']))
{
session_start();
session_destroy();
if(isset($_COOKIE['user']) || isset($_COOKIE['pass']))
{
setcookie('user',$user,time()-500);
setcookie('pass',$pass,time()-500);
}
redirect_home();
//header('location: [url]http://'.nick().'.altervista.org');[/url]
}
else
{
if(isset($ACCOUNT_DB))
$nick = $ACCOUNT_DB;
else $nick = nick();
$db = mysql_connect('localhost',$nick,'');
if(!$db)
die('Impossibile connettersi al database: '.mysql_error());
if(!mysql_select_db('my_'.$nick,$db))
die('Impossibile selezionare il database');
}
?>
La riga [$db = mysql_connect('localhost',$nick,'');] credo sia quella incriminata, ma non vorrei dire una sciocchezza.
- File login.php
Codice PHP:
<?php
*/
session_start();
require_once('./funzioni.php');
require('./config.php');
if(isset($_SESSION['utente'])) {
echo "Benvenuto, ".$_SESSION['utente']."<br> <a href="protetta.php">entra qui</a>";
}
else if(isset($_COOKIE['user'],$_COOKIE['pass']))
{
$user = mysql_real_escape_string($_COOKIE['user']);
$pass = mysql_real_escape_string($_COOKIE['pass']);
#rinnovo i cookie
setcookie('user',$user,time()+(60*60*24*30)); //dura 30 gg
setcookie('pass',$pass,time()+(60*60*24*30)); //dura 30 gg
}
if(isset($_POST['username'],$_POST['password']))
{
$user = mysql_real_escape_string($_POST['username']);
$pass = md5(mysql_real_escape_string($_POST['password']));
}
if(isset($user,$pass))
{
$q = mysql_query('SELECT attivazione,pass FROM utenti WHERE username = \''.$user.'\' AND password=\''.$pass.'\' LIMIT 1');
mysql_close($db);
if(!$q)
echo 'Errore durante la query: '.mysql_error();
else if(mysql_num_rows($q) == 1)
{
$q = mysql_fetch_assoc($q);
if(empty($q['attivazione']) || (!empty($q['pass'])))
{
$_SESSION['utente'] = htmlentities($user);
if(isset($_POST['ricordami']))
{
setcookie('user',$user,time()+(60*60*24*30)); //dura 30 gg
setcookie('pass',$pass,time()+(60*60*24*30)); //dura 30 gg
}
redirect_home();
}
else
echo 'Account non attivato. Attivalo dall\'indirizzo specificato nell\'email!.';
}
else echo 'I dati non sono corretti.';
}
if(!isset($_SESSION['utente']))
{
?>
File installazione.php
Codice PHP:
<?php
*/
require("config.php");
if( mysql_query("
CREATE TABLE IF NOT EXISTS utenti (
id MEDIUMINT(8) NOT NULL AUTO_INCREMENT,
username VARCHAR(25) NOT NULL default '',
password VARCHAR(32) NOT NULL default '',
email VARCHAR(255) NOT NULL default '',
pass VARCHAR(32) default '',
attivazione VARCHAR(32) default '',
PRIMARY KEY (id)
);
"))
echo 'Installazione riuscita!';
else echo 'Errore durante l\'installazione!';
mysql_close($db);
?>
Questi credo siano i file su cui lavorare. Se invece ne occorressero degli altri me lo faccia presente.