file lock

Salve, ho un serio problema!

Ho una sessione in PHP aperta per la gestione di uno shop, il server di appoggio ha vietato l'uso di inviare email in PHPdell'ordine effettuato con il riepilogo di quanto acquistato e mi ha detto che posso memorizzare l'ordine in un file lock. Ma non mi apre il file!

quali possono essere i motivi perche' non si riesce a memorizzare dei dati su un supporto di persistenza?

Nel mio caso possono essere motivi inerenti al codice o perche' 'il server' non permette PHP a livello client?

Non ci capisco piu' niente!!! :crazy:

Grazie per la risposta che vorrete darmi, in ogni caso quasiasi consiglio e' ben accetto.

Maax

inviato 9 anni fa
maax
maax
1
X 0 X

Se non puoi inviare una mail allora cambia server....

:bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

caro Gianni, non e' da buon programmatore lascaiare un problema inrisolto!

spero di averti spronato ad aiutarmi ;)

grazie e spero a presto.

cmq...e' un server straniero e sono obbligata a trovare una soluzione perche' e' un mio client.

risposto 9 anni fa
maax
maax
1
X 0 X

Cosa intendi per file lock? Un file a cui gli utenti possono accedere uno per volta? Cosa ti ha fornito il gestore del server? Solo il nome del file? Cosa dovresti scrivere su questo file? Riporta il codice che usi per aprire e scrivere il file.

:bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Grazie! :)

L'admistrator mi ha detto che devo memorizzare i dati dell'email che dovrebbe essere inviati normalmente al mittente in modo che poi a fine serata manualmente si vanno a recuperare questi file con ftp e si leggono per procedere all'esecuzione del'ordine.

Non mi ha detto altro, ma a questo punto mi viene il dubbio che loro hanno una cartella apposta evidentemente per la memorizzazione di questi file. ecco perche' non riesco a forzare la creazione del file per la scrittura. cmq ti riporto il codice.

CODICE:

if ($result == ' ')

{

//CONTENUTO DEL MESSAGGIO DA INVIARE

$text="Sehr geehrte Frau/Herr ".$nam."Gerne bestätigen wir Ihnen Ihre Bestellung wie folgt:\n"

.$meinKoerbli->bestellen()."\n".$text."\n".$ohne_mit_eindruck."\n".$eindruck."\n:".$rufen."\n:"

.$pers."\nVorname:".$vorn."\nName:".$nam."\nAdresse:".$adres."\nPLZ und Ort:".$plz."\nFirma:"

.$firm."\nTel:".$tel."\nEmail:".$email."\nBemerkungen:".$bemerk.

"\n".$veranstalt."\n".$anzeig."\n".$freund."\n".$infob."\n".$intern."\n".$sp."\n".$sonst."\n

Der Auftrag wird so rasch als möglich ausgeführt."

Wir danken Ihnen herzlich, dass Sie sich für unsere Grusskarten entschieden haben.

Mit freundlichen Grüssen";

//SCRIVE IL FILE SIL SERVER

$filename = 'bestellung.txt';

$fp = @fopen($filename, "w+") or die ("il file $filename non si puo aprire");

if (flock($fp, LOCK_EX)) {

@fwrite ($fp,"elenco ordine");

@fwrite ($fp,$text);

flock($fp, LOCK_UN);

}

else{

die( "Non si riesce ad eseguire il lock del file !");

@fclose ($fp) or die ("Kann $filename nicht schliessen");

echo"<script>javascript:openWindow('email')</script>";

session_destroy();

$text = " ";

$emailsent = false;

}

else{

$emailsent = true;

$result="<script>alert('Sorry, Email nicht versendt')</script>";

}

risposto 9 anni fa
maax
maax
1
X 0 X

Ti stata indicata la cartella in cui salvare questi file? Ti stato detto il nome del file?

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

no, non mi e' stato indicato dove salvare il file ne' che nome dargli. Ma e' importante, non la possiamo creare noi o viene creata cmq.?

mi sa' che devo di nuovo telefonare l'admt mi danno le informazione come si usa dire qui: 'spizz'ca e mullica!

Se hai cmq consigli da darmi li accettero' ben volentieri.

Grazie :bye:

risposto 9 anni fa
maax
maax
1
X 0 X

importante sapere se c' una cartella particolare nella quale salvare questi file altrimenti rischi di perdere tempo nel tentativo di salvare i file in una cartella per la quale non hai i permessi sufficienti

:bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Si e' cosi', ne ho avuto poi la conferma, grazie.

e buona domenica... a tutti.

risposto 9 anni fa
maax
maax
1
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda