Archive février 2009
Tous les articles archivés pour le mois et l'année demandée.
Comment rcuprer le contenu de plusieurs cases cocher ?
Pour récupérer les données d'un nombre indéterminé de champs de formulaire portant le même nom, ajoutez [ ] au nom de ces champs :Voici le code à saisir :
<form name="form1" action="formres.php">
<input type="checkbox" name="tab[]" value="1">
<input type="checkbox" name="tab[]" value="2">
<input type="checkbox" name="tab[]" value="3">
<input type="submit" name="Submit" value="Envoyer">
</form>
La page fictive "formres.php", cible du formulaire, contiendra un tableau $tab indexé numériquement.
Exemples de parcours de tableau :
<?
while (list(, $v) = each ($tab)) {
echo $v."<br>";
}
reset($tab);
foreach ($tab as $v) {
echo $v."<br>";
}
?>
Affiche :
1
2
3
si les 3 cases ont été cochées.
Laisser les requtes DHCP traverser iptables
Une fois que vous savez comment DHCP fonctionne, vous pouvez le faire. Cependant, vous devez prendre des précautions sur ce que vous laissez passer ou non. En premier lieu, vous devez savoir que DHCP fonctionne sur le protocole UDP.Donc, c'est la première chose à voir. En second lieu, vous devez vérifier depuis quelle interface les requêtes sont envoyées et reçues. Par exemple, si votre interface eth0 est activée par DHCP, vous n'autoriserez pas les requêtes DHCP sur eth1. Pour rendre la règle un peu plus précise, vous n'autoriserez que les ports UDP utilisés par DHCP, qui sont les ports 67 et 68.
$IPTABLES -I INPUT -i $LAN_IFACE -p udp --dport 67:68 --sport \67:68 -j ACCEPT
Le trafic depuis et vers les ports 67 et 68 est autorisé, cependant, ce n'est pas un gros problème car ce ne sont que les requêtes des hôtes établissant la connexion depuis les ports 67 et 68 qui sont acceptés.
Cette règle peut, bien sûr, être encore plus restrictive, mais elle semble suffisante pour accepter les requêtes DHCP sans ouvrir de larges failles.
Comment fonctionne un serveur proxy ?
Il est toujours intéressant de savoir comment fonctionne un serveur proxy. En effet, il s'agit d'un serveur "mandaté" par une application (ex : navigateur web) pour effectuer une requête sur internet à sa place. Ainsi, lorsqu'un utilisateur se connecte à l'internet à l'aide d'une application cliente configurée pour utiliser un serveur proxy,
- Celle-ci va se connecter en premier lieu au serveur proxy et lui donner sa requête.
- Le serveur proxy va alors se connecter au serveur que l'application cliente cherche à joindre et lui transmettre la requête.
- Le serveur distant va ensuite donner sa réponse au proxy, ...
- ... qui va à son tour la transmettre à l'application cliente.

Comment changer le mode d’authentification sur SQL Server
Pour changer le mode d'authentification à SQL Server de Windows. Voici ce que nous vous proposons de faire ;Il faut aller dans la base de registre sur la machine sur laquelle est installé le serveur et rechercher la clef suivante :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.x\MSSQLServer\
Où x est un nombre qui correspond à l'instance du serveur. Dans la clef ci-dessous :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL\
Vous obtiendrez le numéro qui correspond au nom de l'instance. Le nom de l'instance par défaut est MSSQLSERVER.
La valeur à modifier est LoginMode ses valeurs possible sont :
- Windows uniquement
- Mixte (Windows + SQL Server)
Dans certaines versions d'avant SQL Server 2005 il est possible de trouver cette valeur dans la clef de base de registre suivante :
HKEY_LOCAL_MACHINE \Software\Microsoft\MSSqlserver\MSSqlServer\
N’oublier pas de redémarrer les services (Serveur + Agent) après ces modifications.
Envoyer un message
Pour envoyer un message électronique, PHP propose une commande très simple : la commande mail. Cette fonction s’utilise au minimum avec trois arguments :L’adresse e-mail du destinataire ;
Le sujet du message ;
Le titre du message.
Voici un exemple d’utilisation :
Mail(“webmaster@votresite.com “, “Sans importance“, “Test d’envoi d’un e-mail“) ;
Pour envoyer le même à plusieurs destinataires, il suffit d’indiquer les différentes adresses séparées par un espace :
Mail(“webmaster@votresite.com info@votresite.com“, “Sans importance“, “Test d’envoi d’un e-mail“) ;
Pour insérer des retours à la ligne dans le texte du message, on ne doit pas utiliser de commandes
HTML(<br> ou <P>), mais les caractères \n :
Mail(“webmaster@votresite.com “, “Sans importance“, “Ligne 1 \nLigne 2 \n Ligne 3“ ) ;
Vous avez peut être remarqué que l’adresse de l’expéditeur n’est indiquée nulle part. Pour l’ajouter, on passe un quatrième argument à la fonction :
Mail(“webmaster@votresite.com“ , “Sujet“, “Test d’envoi “, “From : moi@serveur.com“, ) ;
Ce quatrième paramètre ne sert pas uniquement à passer l’adresse de l’expéditeur. On peut ajouter plusieurs informations séparées par un retour à la ligne (\n)
Mail(“webmaster@votresite.com“ , “Sujet“, “Test d’envoi “, “From : moi@serveur.com\nReply-To: expediteur@serveur.com“ ) ;
Dans l’exemple précédent, le quatrième argument de la fonction contient l’adresse de l’expéditeur (From :) et l’adresse de réponse(Reply-To).
Info Bulle au dessus d'une image d'un lien, ou d'un texte.
Vous souhaitez afficher une info-bulle au dessus d’une image ou d’un texte. Vous ne savez pas comment faire, c’est pourtant simple,Aller dans la balise d'insertion de l'image (à la fin) et ajoutez la variable ALT="Commentaire" c'est-à-dire comme ceci:
<IMG SRC="image.gif" ALT="mon commentaire">
Vous pouvez également insérer une info bulle au dessus d'un lien: pour cela, insérez title="commentaire" dans la balise du lien. Vous allez obtenir ça:
<a href="http://mythe.com" title="Site pour recherche">
Si c’est pour un texte classique: entourez votre texte simplement de la balise <font title="commentaire">Mon Texte</font>
Interroger separement un primaire et un secondaire
Il peut arriver que l'on souhaite verifier si un nom de domaine est configuré de la meme maniere a la fois sur le serveur primaire et sur le serveur secondaire
Pour cela, rien de plus simple grace a la commande nslookup .
Interrogation du serveur primaire ns1.serveur.com au sujet du domaine domaine.com :
Ouvrez une fenetre DOS et tapez :
nslookup domaine.com ns1.serveur.com
Interrogation du serveur secondaire ns2.serveur.com au sujet du domaine domaine.com :
Ouvrez une fenetre DOS et tapez :
nslookup domaine.com ns2.serveur.com
Si les resultats sont les memes, c'est que les 2 serveurs de noms sont synchronisés.
Dans le cas contraire, il y a un probleme
Changer le propriétaire
Dans SQL 2000 et 2005 il est difficile voir impossible de changer le propriétaire d'un objet tel une base de données ou une table à l'aide des outils offert dans le SQL Enterprise Manager! Voici une astuce qui vous aidera désormais à résoudre ce type poblème.
Commencez tout d'abord par créer un nouveau script sql
Saisissez la commande suivante :
EXEC sp_changeobjectowner 'PROPRIÉTAIRE.VOTRE_OBJET', 'NOUVEAU_PROPRIÉTAIRE'
Exécuté votre script SQL
Normalement, le propriétaire de votre objet devrait être changé. Si tel n'est pas le cas, rafraichissez vos tables ou votre base de données entière.
{mos_fb_discuss:no_discuss}
Générer un nombre aléatoire
Pour afficher un bandeau publicitaire choisi parmi une série, réaliser un petit jeu ou personnaliser certaines pages, il peut être intéressant de disposer d’une fonction de tirage aléatoire d’un nombre.
PHP propose une telle fonction très simple. Il suffit de lui indiquer dans quelle plage le nombre tiré doit se trouver.
Supposons dans notre exemple que le nombre tiré est compris entre 10 et 200 :
$nb = rand (10,200) ;
Empêcher aux visiteurs de copier une image de votre site
Il est possible d’empêcher les visiteurs de votre site de copier une ou plusieurs images. Il vous suffit de mettre cette balise dans votre page.<body ondragstart="return onselectstart="return false"oncontextmenu="return false"false" ></body>
Si vous voulez empêcher la copie sur une seule image, insérer la balise suivante:
<img galleryimg="no" />
Mais si c’est pour empêcher la copie sur toute une page, utilisez plutôt cette balise:
<meta http-equiv="imagetoolbar" content="no" />
image <img galleryimg="no" />