grazie della risposta,il tuo script non restituisce errori ma il metodo Scrittura() non scrive nulla...
Avevo cambiato gli script in questo modo che mi sembrava giusto, ma non vanno ugualmente... qual'è l' errore in questi? grazie mille delle risposte
classe1.inc
[PHP]
<?php
class Scrivifile {
public $file="iscritti.txt";
public $nome;
public $cognome;
public $mail;
public function __construct($in_nome, $in_cognome, $in_mail, $in_file) {
$this->nome= $in_nome;
$this->cognome=$in_cognome;
$this->mail=$in_mail;
$this->file=$in_file;
}
protected function Controllodati () {
$in_nome = $this->nome;
$in_cognome = $this->cognome;
if(!$in_nome || !$in_cognome )
return FALSE;
else return TRUE;
}
protected function Controllomail() {
$in_mail = $this->mail;
trim($in_mail);
$num_at = count(explode( '@', $in_mail )) - 1;
if(!$in_mail)
return FALSE;
else if(!preg_match( '/^[\w.-]+@\w+[\w.-]*?.\w{1,4}$/', $in_mail))
return FALSE;
}
protected function Controllofile () {
$in_file = $this->file;
if (is_writable($in_file) && feof($in_file))
return TRUE;
else return FALSE;
}
public function Scrittura () {
$in_file = $this->file;
if($this->Controllodati() && $this->Controllomail() && $this->Controllofile()) {
if($fp=fopen($in_file,"a")) {
$dascrivere="$this->nome | $this->cognome | $this->mail/r/n";
fwrite($fp,$dascrivere);
fclose($fp);
}
else echo "errore nell' apertura del file'";
}
else if (!$this->Controllodati() || !$this->Controllomail())
echo "I dati da te immessi sono errati, la preghiamo di ricontrollarli" ;
}
?>
[/PHP]
script1.php
[PHP]
<?php
include ("classe1.inc");
$nome=$_POST['nome'];
$cognome=$_POST['cognome'];
$mail=$_POST['mail'];
$scrivifile = new Scrivifile($nome,$cognome,$mail,$file);
$scrivifile->Scrittura();
?>
[/PHP]