Visualizzazione post con etichetta php. Mostra tutti i post
Visualizzazione post con etichetta php. Mostra tutti i post

martedì 17 maggio 2011

PHP stampa diretta senza dialog scelta stampante

Inviare documenti direttamente alla stampante senza il dialog di stampa con php


Per applicazioni web intranet / locali potrebbe essere utile eliminare la conferma della stampa (dialog). Per fare ciò occorre abilitare php_printer.dll nelle ext.

venerdì 30 luglio 2010

PHP Array - Unpivot - Invert Matrix Key Value

A volte per qualche strano motivo può esserci l'esigenza di "unpivotare" un array multidimensionale.
Cioè passare da:
Array
(
[0] => Array
(
[primo] => 1
[secondo] => 2
[terzo] => 3
[quarto] => 4
)

[1] => Array
(
[primo] => 5
[secondo] => 6
[terzo] => 7
[quarto] => 8
)

[2] => Array
(
[primo] => 9
[secondo] => 10
[terzo] => 11
[quarto] => 12
)
)
a
Array
(
[primo] => Array
(
[0] => 1
[1] => 5
[2] => 9
)

[secondo] => Array
(
[0] => 2
[1] => 6
[2] => 10
)

[terzo] => Array
(
[0] => 3
[1] => 7
[2] => 11
)

[quarto] => Array
(
[0] => 4
[1] => 8
[2] => 12
)
)
Tutto questo grazie alla seguente funzione:

sabato 12 giugno 2010

HTML FORM checkbox list (Array) via GET a PHP

A volte capita di avere una lista di checkbox da voler inviare ad una pagina php

Si fa così:
HTML


Se clicco su pippo e paperino la mia GET sarà la seguente:

http://pagina.php?field[]=pippo&field[]=paperino


Per inserire l'array in una variabile PHP
PHP


Divertitevi :D

mercoledì 28 ottobre 2009

Centralizzare ed automatizzare la stampa html PHP e OFFICE

Welcome in the rotten world! Avariati ben ritrovati!

Scenario


Un'applicazione web in intranet aziendale ha la necessità di centralizzare ed automatizzare le stampe in questo senso: File A -> Stampante A; File B -> Stampante B; ecc...

Pre-messa


- Windows, IIS/Apache, PHP, Office Word, qualche stampante;
- con PHP possiamo eseguire comandi utilizzando l'operatore backticks (``);
- in Microsoft Office Word esistono delle robe chiamate MACRO;
- in particolare FilePrintDefault binda direttamente la stampa immediata;
- in fine un file batch per gradire.

Implementazione





Nel codice sopra si imposta una stampante predefinita pima e si lancia un file bat poi.

"C:\Program Files\Microsoft Office\Office12\WINWORD.EXE" %1 /q /n /mFilePrintDefault /mFileExit

è il contenuto del file print.bat; ovviamente occorre aggiornarlo con il percorso corretto del file WINWORD.EXE a seconda della versione utilizzata.


dopo l'implementazione largo all'immaginazione...

domenica 26 luglio 2009

PHP Determinare giorni del mese

Se mai vi servisse sapere quanti giorni ci sono in un determinato mese in PHP esiste una pratica funzione che si occupa proprio di questo.

cal_days_in_month ( int $calendar , int $month , int $year )

Sotto un esempio pratico (commentati ci sono le istruzioni per avere l'anno ed il mese corrente)

<?php
$month = 2;
//date( "m",time());
echo "Mese: ".$month;
$year = 2004;
//date( "Y",time());
echo " - Anno: ".$year;
$num = cal_days_in_month(CAL_GREGORIAN, $month , $year);
echo " => Giorni: ".$num;
?>

lunedì 23 febbraio 2009

php getimagesize empty array

Quando getimagesize restituisce un array vuoto prima di passare a complicati affari controllate la vostra php.ini alla voce:
; Maximum allowed size for uploaded files.
upload_max_filesize = 8M

Molto probabilmente avete impostato un valore troppo basso di upload. Per questo motivo la funzione getimagesize rilascia un array vuoto e non si riesce ad avere i valori di width ed height dell'immagine jpg o png...

f***ing lost time :P

mercoledì 18 febbraio 2009

EasyPHP - Unexpected end of MySql... See log file?

Da quando sono passato al 64 bit ho un sacco di amici problemi! -_-

EasyPHP e Windows Vista questione di permessi!

EasyPHP non mi ha mai dato rogne... fino ad oggi... dopo il problema della tastiera di questa mattina (risoloto molto elegantemente! vedi post precedente ^^) ho deciso di lasciar perder il pc... fino a sta sera. Avvio EasyPHP e PATAPAM!!!

Unexpected end of MySql... See log file?



Ma Poooorc..£$"£$£! Ho cercato soluzioni in giro ma niente che mi risolvesse il problema. Drop DB, disinstalla e reinstalla (approccio classico ma funziona solo la prima volta :P)...

Problema: mysql si avvia e si arresta immediatamente; salta fuori un alert con il messaggio di cui sopra e il log scrive roba di questo tipo:
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
090218 21:47:15 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
090218 21:47:15 InnoDB: Started; log sequence number 0 46409
090218 21:47:15 [Note] Event Scheduler: Loaded 0 events
090218 21:47:15 [Note] C:\PROGRA~1\EASYPH~1.0\MySql\bin\mysqld.exe: ready for connections.
Version: '5.1.30-community' socket: '' port: 3306 MySQL Community Server (GPL)
090218 21:47:28 [Note] C:\PROGRA~1\EASYPH~1.0\MySql\bin\mysqld.exe: Shutdown normale

Soluzione: AVVIARE EASYPHP CON I PERMESSI DI AMMINISTRATORE.

La prassi è come sempre:
tasto destro sull'icona di EasyPHP e Esegui come amministratore.
Happy PHP

lunedì 19 gennaio 2009

Php Mail - Ccn (Bcc)

Utilizzare il meccanismo del Ccn (copia carbone nascosta) , dall'inglese Bcc (blind carbon copy), in php con la funzione mail:

mail($destinatario, $oggetto, stripslashes($messaggio), "From: ".stripslashes($mittente)."\r\nX-Mailer: DT_formmail\r\nContent-type: text/html; charset=iso-8859-1\r\nMIME-Version: 1.0\r\nContent-Transfer-Encoding: quoted-printable\r\nBcc:pippo@pippo.it\r\n");
Il Ccn serve per nascondere uno o più destinatari di una mail.

venerdì 23 maggio 2008

php mysql leggere campo bit

Ecco come fare per leggere i campi bit in php utilizzando mysql:

$result = mysql_query ("
SELECT users.user, (users.administrator = 1) as administrator
FROM users
WHERE users.user = '".$userName."'
") OR die ("

Errore

query CHECK ADMINISTRATOR USER
Dettagli:".mysql_error());
$admin = false;
if(mysql_num_rows($result) > 0)
{
while($row = mysql_fetch_assoc($result))
{
if($row["administrator"] == "1")
$admin = true;
}
}
mysql_free_result($result);
happy php!

venerdì 9 maggio 2008

PHP: Lettere accentate

Ecco come risolvere il problema delle lettere accentate trasformate in caratteri incomprensibili:
echo utf8_encode("Lunedì - àèìòù");

ESEMPIO (da salvare come .php):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>titolo</title>
<style type="text/css">
body{font-family:Verdana; font-size:10px;}
</style>
</head>
<body>
<?php
echo "NO UNICODE: Lunedì - àèìòù";
echo "<br />";
echo utf8_encode("SI UNICODE: Lunedì - àèìòù");
?>
</body>
</html>



Maledetto italiano &%$$"£$"%$£&
Good writing...

giovedì 8 maggio 2008

PHP codice non interpretato

Vi è mai capitato di voler inserire codice php in una pagina?

Non state ad impazzire, esiste una semplice funzione php:

highlight_string

esempio di utilizzo:

<?php

highlight_string('<?php phpinfo(); ?>');


?>