Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-05-2010, 09:59   #1
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1372
[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, 10: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, 10:45   #3
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1372
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, 16: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, 19:46   #5
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1372
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, 14:56   #6
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1372
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, 15: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, 15:42   #8
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1372
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, 15:45   #9
gnappoman
Senior Member
 
L'Avatar di gnappoman
 
Iscritto dal: Feb 2006
Città: ______ Milano ______ Lui sa quello che fa
Messaggi: 1372
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, 15: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, 16: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


Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
Starfield per Nintendo Switch 2 potrebbe...
Un MacBook Pro a -300€, i MacBook Air M4...
Amazon abbassa i prezzi sugli iPhone: sc...
Amazon, ancora sconti sugli smartphone A...
iPhone Air 2 'riciclerà' alcuni c...
Offerta Amazon da non perdere: lo speake...
Nioh 3 debutta alla grande su Steam: pri...
Al centro della Via Lattea ci potrebbe e...
Elon Musk ora guarda alla Luna: SpaceX p...
La Cina ha lanciato nuovamente lo spazio...
Blue Origin potrebbe realizzare il lande...
Artemis II: il prossimo Wet Dress Rehear...
Il nuovo HONOR 600 sta arrivando e avr&a...
La crisi delle memorie non coinvolger&ag...
Windows domina su Steam, ma molti utenti...
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: 10:51.


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