Divers

[PHP] fonction code du département à partir d'un code postal

function getDepartementCodeFromCP($cp) {
                $cp = str_pad(str_replace(' ', '', $cp), 5, '0', STR_PAD_LEFT);
	        $dep_code = substr($cp, 0, 2);
	        if($dep_code == '20') {
	            if((int)$cp < 20200 || in_array((int)$cp, array(20223,20900))){
	                $dep_code = '2A';
	            }else {
	                $dep_code = '2B';
	            }
	        }
	
	        if((int)$dep_code > 95) {
	            $dep_code = substr($cp, 0, 3);
	        }
	
	        return $dep_code;
	    }

[PHP] afficher les x premiers mots d'une chaine

voici un snippet tout simple pour couper une (pour afficher une résumé par exemple) en affichant les X premiers mots

echo preg_match('#(?:\w+\W+){XX}\w+#s' , $texte , $output) ? $output[0] : $texte; //remplacer XX par le nombre de mots souhaités

//le if c'est dans le cas où la chaine est moins longue que XX (dans ce cas on l'affiche telle quelle)
//astuce : si la chaine est en html, on pourrait faire $texte = trim( strip_tags( $texte )) avant

[PHP] générer un mot de passe aléatoire

un petite fonction pratique pour générer un mot de passe aléatoire :

function genPassword($length = 6) {
    $index = str_split("abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ!?@_-[#&$");
    shuffle($index);
    $code = implode('', array_slice($index, rand(0, count($index)-$length), $length));

    return $code;
}

//utilisations :
$pass = genPassword();
$pass = genPassword(8);

[PHP] détecter une requête Ajax

parfois il est pratique de cacher certaines parties d'une page quand elle est appelée en ajax, encore faut-il le savoir :)

if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
//ici on fait le traitement voulu dans le cas d'une requete ajax...
}

il faut toutefois faire attention, la variable $_SERVER['HTTP_X_REQUESTED_WITH'] n'est présente que si la requête ajax est initiée via une librairie javascript comme jQuery, Prototype ou mootools

pour que cela fonctionne sous IE6, pensez aussi à ajouter ce code dans la page :

header("Cache-Control: no-cache");

Tags:

[cURL] effectuer une requête post

voici un petit snippet pour faire une simple requête en POST avec cURL

//Initialisation de la ressource curl
$res = curl_init();

//définition de l'url de la page a appeler :
curl_setopt($res, CURLOPT_URL, 'http://www.site.com/url/de/la-page.php');

//on indique a curl de retourner la réponse dans une variable
curl_setopt($res, CURLOPT_RETURNTRANSFER, true);

//on décide si on veut la réponse avec ou sans les header (ici c'est sans)
curl_setopt($res, CURLOPT_HEADER, false);

//on fait la requête en post
curl_setopt($res, CURLOPT_POST, true);

//on passe un tableau de paramètres qui seront envoyés en post
curl_setopt($res, CURLOPT_POSTFIELDS, array('foo'=>'foofoo', 'bar'=>'barbar', 'toto'=>'tyty', 'param'=>'value'));

//Exécution de la requête
$output = curl_exec($res);

//$output contient maintenant la réponse ou false en cas de problème.

//fermeture de la recette
curl_close($res);

Tags:

Pages

Subscribe to RSS - Divers