Archivi tag: web

Validatore sintattico di carte di credito

Sastgroup fornisce codice PHP che permette di validare sintatticamente i numeri di carta di credito.

< ?

if( checkCreditCard (“40236007878787”, “Visa”, &$errornumber, &$errortext))
echo “OK”;
else echo”MO”;

function checkCreditCard ($cardnumber, $cardname, &$errornumber, &$errortext) {

$cards = array ( array (‘name’ => ‘American Express’,
‘length’ => ’15’,
‘prefixes’ => ‘34,37’,
‘checkdigit’ => true
),
array (‘name’ => ‘Carte Blanche’,
‘length’ => ’14’,
‘prefixes’ => ‘300,301,302,303,304,305,36,38’,
‘checkdigit’ => true
),
array (‘name’ => ‘Diners Club’,
‘length’ => ’14’,
‘prefixes’ => ‘300,301,302,303,304,305,36,38’,
‘checkdigit’ => true
),
array (‘name’ => ‘Discover’,
‘length’ => ’16’,
‘prefixes’ => ‘6011’,
‘checkdigit’ => true
),
array (‘name’ => ‘Enroute’,
‘length’ => ’15’,
‘prefixes’ => ‘2014,2149’,
‘checkdigit’ => true
),
array (‘name’ => ‘JCB’,
‘length’ => ‘15,16’,
‘prefixes’ => ‘3,1800,2131’,
‘checkdigit’ => true
),
array (‘name’ => ‘Maestro’,
‘length’ => ‘16,18’,
‘prefixes’ => ‘5020,6’,
‘checkdigit’ => true
),
array (‘name’ => ‘MasterCard’,
‘length’ => ’16’,
‘prefixes’ => ‘51,52,53,54,55’,
‘checkdigit’ => true
),
array (‘name’ => ‘Solo’,
‘length’ => ‘16,18,19’,
‘prefixes’ => ‘6334,6767’,
‘checkdigit’ => true
),
array (‘name’ => ‘Switch’,
‘length’ => ‘16,18,19’,
‘prefixes’ => ‘4903,4905,4911,4936,564182,633110,6333,6759’,
‘checkdigit’ => true
),
array (‘name’ => ‘Visa’,
‘length’ => ‘13,16’,
‘prefixes’ => ‘4’,
‘checkdigit’ => true
),
array (‘name’ => ‘Visa Electron’,
‘length’ => ’16’,
‘prefixes’ => ‘417500,4917,4913’,
‘checkdigit’ => true
)
);

$ccErrorNo = 0;

$ccErrors [0] = “Unknown card type”;
$ccErrors [1] = “No card number provided”;
$ccErrors [2] = “Credit card number has invalid format”;
$ccErrors [3] = “Credit card number is invalid”;
$ccErrors [4] = “Credit card number is wrong length”;

// Establish card type
$cardType = -1;
for ($i=0; $i

// See if it is this card (ignoring the case of the string)
if (strtolower($cardname) == strtolower($cards[$i][‘name’])) {
$cardType = $i;
break;
}
}

// If card type not found, report an error
if ($cardType == -1) {
$errornumber = 0;
$errortext = $ccErrors [$errornumber];
return false;
}

// Ensure that the user has provided a credit card number
if (strlen($cardnumber) == 0) {
$errornumber = 1;
$errortext = $ccErrors [$errornumber];
return false;
}

// Remove any spaces from the credit card number
$cardNo = str_replace (‘ ‘, ”, $cardnumber);

// Check that the number is numeric and of the right sort of length.
if (!eregi(‘^[0-9]{13,19}$’,$cardNo)) {
$errornumber = 2;
$errortext = $ccErrors [$errornumber];
return false;
}

// Now check the modulus 10 check digit – if required
if ($cards[$cardType][‘checkdigit’]) {
$checksum = 0; // running checksum total
$mychar = “”; // next char to process
$j = 1; // takes value of 1 or 2

// Process each digit one by one starting at the right
for ($i = strlen($cardNo) – 1; $i >= 0; $i–) {

// Extract the next digit and multiply by 1 or 2 on alternative digits.
$calc = $cardNo{$i} * $j;

// If the result is in two digits add 1 to the checksum total
if ($calc > 9) {
$checksum = $checksum + 1;
$calc = $calc – 10;
}

// Add the units element to the checksum total
$checksum = $checksum + $calc;

// Switch the value of j
if ($j ==1) {$j = 2;} else {$j = 1;};
}

// All done – if checksum is divisible by 10, it is a valid modulus 10.
// If not, report an error.
if ($checksum % 10 != 0) {
$errornumber = 3;
$errortext = $ccErrors [$errornumber];
return false;
}
}

// The following are the card-specific checks we undertake.

// Load an array with the valid prefixes for this card
$prefix = split(‘,’,$cards[$cardType][‘prefixes’]);

// Now see if any of them match what we have in the card number
$PrefixValid = false;
for ($i=0; $i
$exp = ‘^’ . $prefix[$i];
if (ereg($exp,$cardNo)) {
$PrefixValid = true;
break;
}
}

// If it isn’t a valid prefix there’s no point at looking at the length
if (!$PrefixValid) {
$errornumber = 3;
$errortext = $ccErrors [$errornumber];
return false;
}

// See if the length is valid for this card
$LengthValid = false;
$lengths = split(‘,’,$cards[$cardType][‘length’]);
for ($j=0; $j
if (strlen($cardNo) == $lengths[$j]) {
$LengthValid = true;
break;
}
}

// See if all is OK by seeing if the length was valid.
if (!$LengthValid) {
$errornumber = 4;
$errortext = $ccErrors [$errornumber];
return false;
};

// The credit card is in the required format.
return true;
}
?>

Continua la lettura di Validatore sintattico di carte di credito

PlugIn WordPress per realizare gallerie di immagini

01. Nextgen Gallery Plugin

nextgen gallery

Nextgen Gallery Plugin

02. Cleaner WordPress Gallery Plugin

2-cleaner

Cleaner WordPress Gallery Plugin

03. Lightbox Gallery Plugin

lightbox Gallery Plugin

Lightbox Gallery Plugin

04. FlippingBook Gallery Plugin

4-flippingbook

FlippingBook Gallery Plugin

05. PhotoXhibit Plugin

5-photoxhibit

PhotoXhibit

06. AWSOM PixGallery Plugin

awsom

AWSOM PixGallery Plugin

07. Falbum Gallery Plugin

falbum

Falbum Gallery Plugin

08. Lazyest Gallery Plugin

8-lazyest-gallery

Galleria Lazyest Plugin

09. WP Photo Album Plugin

WP Photo Album Plugin

WP Plugin Photo Album

Inline Gallery Plugin

inline gallery

Continua la lettura di PlugIn WordPress per realizare gallerie di immagini

EasyTestMaker creare e gestire test

EasyTestMaker è una applicazione web per aiutare insegnanti, docenti o chiunque debba creare dei test scolastici, prove di esame, quiz, a realizzarli senza preoccuparsi della formattazione ed archiviazione.

Si possono creare domande a risposta multipla, breve e discorsiva, quiz vero/falso, elenchi da riordinare e frasi con parole da inserire; all’interno di uno stesso test si possono prevedere sezioni e scrivere indicazioni prima di ogni domanda. Una volta terminato l’inserimento, l’ipotetica prova d’esame viene salvata e può essere stampata.

Per usare EasyTestMaker occorre registrarsi, gratuitamente; è disponibile anche una versione a pagamento del servizio, con funzioni aggiuntive come il download dei test in formato .doc.

Continua la lettura di EasyTestMaker creare e gestire test

Cambiare l’indirizzo MAC della propria scheda di rete

L’ indirizzo MAC è un  codice identificativo (ed univoco) di 48 bit che è associato ad ogni scheda di rete ethernet. Logicamente, come ben sasprete, diverso è il concetto dell’indirizzo IP, che, invece, identifica la scheda stessa all’interno di una rete.

Technitium MAC Address Changer consente di cambiare l’indirizzo fisico di una scheda. Ma non solo. Prevede la possibilità di utilizzare molte opzioni avanzate come la modifica “on the fly” del MAC ed il salvataggio di alcune configurazioni a piacere da sfruttare a seconda delle situazioni. E’ gratuito ed è disponibile per Windows.

Realizzare una tag-cloud con GWT (Google Web Toolkit)

Ciao a tutti, volevo segnalare il seguente tutorial dove viene spiegato come realizzare una tag-cloud in GWT (Google Web Toolkit).

Tag Cloud

Con lo stesso tutorial si può capire anche come far interagire AJAX realizzato in GWT ad un server che risponde con dati in formato JSON.

Lo consiglio a tutti gli sviluppatori che vogliono realizzare codice in Javascript conoscendo solamente Java.

TUTORIAL

Pdf come moduli nel proprio sito web

Davvero interessante questo servizio web che permette la creazione di documenti in formato PDF che possono essere, successivamente, incorporart nelle pagine web del proprio sito/blog come veri e proprimoduli.

Doculicious è il nome dell’applicazione e consente ai vari utenti che accedono ai moduli-PDF di scaricarli cmpilati proprio come un file PDF. L’utente, quindi, può salvare il file sul proprio PC e inviare, nello stesso tempo, i dati inseriti al webmaster. Ma, Doculicious non è solo utilizzabile come mera raccolta di dati.

Si possono creare, ad esempio, modelli di certificati, biglietti da visita e simili. Per gli utenti si tratta solo di compilare i dati richiesti e scaricare il PDF per stamparlo. La versione gratuita ha limiti di numero di creazione di documenti (50 documenti e 20 download al mese.) mentre quella a pagamento non ne possiede. Esiste la possibilità di creare documenti da zer oppure sfruttare modelli preesistente e modificarli nella dimensione, nel colore di sfondo, dimensione del testo, font e molto altro ancora. Inoltre, ogni elemento presente può essere personalizzato utilizzando l’opzione chiamata PropertiesBox che trovate nell’editor.