Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-05-2010, 08:59   #1
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1383
[php] Dichiarazione variabili


Ciao sul mio sito sto utilizzando apgform http://apgform.sourceforge.net/, per creare col php una semplice tabella excel a partire da un form
di seguito posto una parte di codice per capirci
Dunque il problema è che il codice fa un array con il contenuto del form, lo mette in una variabile, che poi va scritta direttamente sul file, però se si tratta di un valore numerico lo riporta bene, se si tratta di testo lo riporta bene, se si tratta di un CAP per esempio 00190 fa casino, mi riporta 190 perchè non lo prende come stringa ma come numero.
Dato che sulla variabile di array non ho formule da applicare, posso dire al php di trattare questa variabile sempre come stringa?
Quote:
<?php
/*
apgForm 1.7

*/
$email = $_POST['email'];
// Change this to the page you want the user to be redirected to after form is submitted (i.e. success.html and error.html)



// Change this to the character(s) you want to be placed instead of line breaks(new line, enter, etc)
$lbChar = " "; // default is a space, you may change it to whatever you want

// Don't change anything below this line

// Determine if the form was sent through the GET methog or the POST method.
if($_POST){
$array = $_POST;
} else if($_GET){
$array = $_GET;
} else {
die("You must Access this file through a form."); // If someone accesses the file directly, it wont work
}

//Check if the filename was sent through the form or not
if(!$array['filename']){
// if the filename wasnt sent through the form, it will become form.xls, you can change the default if you want.
$array['filename'] = "form.xls"; //Set the file to save the information in

} else {
if(!(stristr($array['filename'],".xls"))){
$array['filename'] = $array['filename'] . ".xls";
}
}

// Define the tab and carriage return characters:
$tab = "\t"; //chr(9);
$cr = "\n"; //chr(13);

if($array){
// Make The Top row for the excel file and store it in the $header variable
$keys = array_keys($array);
foreach($keys as $key){
if(strtolower($key) != 'filename' && strtolower($key) != 'title'){
$header .= $key . $tab;
}
}
$header .= $cr;

//Make the line with the contents to write to the excel file.
foreach($keys as $key){
if(strtolower($key) != 'filename' && strtolower($key) != 'title'){

$array[$key] = str_replace("\n",$lbChar,$array[$key]);
$array[$key] = preg_replace('/([\r\n])/e',"ord('$1')==10?'':''",$array[$key]);
$array[$key] = str_replace("\\","",$array[$key]);
$array[$key] = str_replace($tab, " ", $array[$key]);
$data .= $array[$key] . $tab ;
}
}
$data .= $cr;

if (file_exists($array['filename'])) {
$final_data = $data; // If the file does exist, then only write the information the user sent
} else {
$final_data = $header . $data; // If file does not exist, write the header(first line in excel with titles) to the file
}
// open the file and write to it

$fp = fopen($array['filename'],"a"); // $fp is now the file pointer to file $array['filename']

if($fp){

fwrite($fp,$final_data); //Write information to the file
fclose($fp); // Close the file
// Success
}
Grazie
__________________
Ho comprato/venduto a: Ex-Scudo ezekiel22 ross134 Peach1200 drive97 alexrena gnappo82 pipex riporto Torbuk! udeXtomi Plokko pabloescobarr gnammyx stranamore krike Velvet biXel schumyFast Obelix-it ilkarro pines alexanderdevice
gnappoman è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2010, 09:02   #2
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
ma lo sai che in america fanno delle competizioni su chi scrive codice funzionante su una sola riga ... ci dovresti andare

EDIT: adesso si vede normale ...bah ... saranno gli effetti di ieri sera ghgh
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2010, 09:45   #3
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1383
ahah
__________________
Ho comprato/venduto a: Ex-Scudo ezekiel22 ross134 Peach1200 drive97 alexrena gnappo82 pipex riporto Torbuk! udeXtomi Plokko pabloescobarr gnammyx stranamore krike Velvet biXel schumyFast Obelix-it ilkarro pines alexanderdevice
gnappoman è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2010, 15:29   #4
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Hai due strade:

a) O casti la variabile a stringa tramite l'operatore di cast: (string) $variabile.
b) O lo tratti come numero tramite la funzione di php number_format();

Il tuo problema, vediamo se ho capito bene, è che se un qualsiasi utente inserisce 00123 come CAP lui salva un 123, escludendo i primi 2 ZERI, giusto?

Hai sopra le due soluzioni
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2010, 18:46   #5
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1383
si il problema e' quello, grazie mille della risposta, adesso provo..
__________________
Ho comprato/venduto a: Ex-Scudo ezekiel22 ross134 Peach1200 drive97 alexrena gnappo82 pipex riporto Torbuk! udeXtomi Plokko pabloescobarr gnammyx stranamore krike Velvet biXel schumyFast Obelix-it ilkarro pines alexanderdevice
gnappoman è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2010, 13:56   #6
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1383
dunque cast mi sembra la funzione giusta per me,
però se guardiamo un attimo il codice

if($_POST){
$array = (string) $_POST;
} else if($_GET){
$array = (string) $_GET;
ho provato a fare questa modifica, ma mi dà errore,
come faccio?
tnx
__________________
Ho comprato/venduto a: Ex-Scudo ezekiel22 ross134 Peach1200 drive97 alexrena gnappo82 pipex riporto Torbuk! udeXtomi Plokko pabloescobarr gnammyx stranamore krike Velvet biXel schumyFast Obelix-it ilkarro pines alexanderdevice
gnappoman è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2010, 14:37   #7
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da gnappoman Guarda i messaggi
dunque cast mi sembra la funzione giusta per me,
però se guardiamo un attimo il codice

if($_POST){
$array = (string) $_POST;
} else if($_GET){
$array = (string) $_GET;
ho provato a fare questa modifica, ma mi dà errore,
come faccio?
tnx
Mumble... tu stai cercando di 'castare' un Array... forse è piu corretto un qualcosa del tipo (string) $_POST['valore'];
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2010, 14:42   #8
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1383
Ciao,
grazie,
ma se volessi castare l'array?
devo prima imploderlo?
Grazie
__________________
Ho comprato/venduto a: Ex-Scudo ezekiel22 ross134 Peach1200 drive97 alexrena gnappo82 pipex riporto Torbuk! udeXtomi Plokko pabloescobarr gnammyx stranamore krike Velvet biXel schumyFast Obelix-it ilkarro pines alexanderdevice
gnappoman è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2010, 14:45   #9
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1383
cioè il mio problema è che il php quando mi trova il valore CAP, usa una variabile int, al posto di una stringa, mentre vorrei che tutte le variabili fossero trattate come stringa!
__________________
Ho comprato/venduto a: Ex-Scudo ezekiel22 ross134 Peach1200 drive97 alexrena gnappo82 pipex riporto Torbuk! udeXtomi Plokko pabloescobarr gnammyx stranamore krike Velvet biXel schumyFast Obelix-it ilkarro pines alexanderdevice
gnappoman è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2010, 14:46   #10
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da gnappoman Guarda i messaggi
Ciao,
grazie,
ma se volessi castare l'array?
devo prima imploderlo?
Grazie
Se hai pochi valori puoi usare la list() di PHP e quindi poi castare i singoli valori, altrimenti puoi castarlo ad oggetto:

Codice:
$obj = (object) $array;
e poi:

Codice:
echo (string) $obj->elemento;
se non ricordo male
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 09-12-2010, 15:44   #11
Mel1
Junior Member
 
Iscritto dal: Dec 2010
Messaggi: 2
Aiutino

Ciao a tutti, chiedo gentilmente un piccolo aiutino, premetto che sono alle primissime armi con il codice PHP, avrei bisogno che chi si collega al mio sito personale, digitando

NOME e Cognome (uso un file html con opzione <Form>)

di verificarlo e quindi di farlo accedere al sito.

non riesco a capire bene l'uso delle variabili in PHP, vorrei usare un sistema di condizioni (IF se uguale a "PIPPO PLUTO" entri, altrimenti non puoi accedere, lo stesso se non digiti nulla) anche perchè è un sito personale e solo alcuni amici e parenti possono accedere.

spero di essermi spiegato
Ringrazio chiunque possa darmi una mano.

spero di essere nel post giusto...se così non fosse chiedo scusa in anticipo, mi sono registrato da poco.
Saluti
Mel1 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Speciale TV in offerta su Amazon: Hisens...
Non c'è pace per Trezor: 347.000 e-mail ...
È un portatile Dell e li vale tut...
Apple iPhone 17 Pro Max 256GB a 1.195€ (...
GPT-6 Astra è davvero AGI o non s...
LG OLED G6S 48'' a 845€ e G6 55'' a 1368...
Mantax Otax: il malware Android che crip...
Musk incassa un altro maxi contratto IA:...
Le vendite di EV sono esplose in tutto i...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:42.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v