Chezsteph1

Aller au contenu | Aller au menu | Aller à la recherche

lundi, septembre 22 2008

VirtualBox - INACCESSIBLE_BOT_DEVICE

Une machine Windows démarre avec un message d'erreur "inaccessible boot device"

((/public/ibd.png

Lorsque que je boote sur windows 2000, j'obtient le message “INACCESSIBLE_BOOT_DEVICE”. La problème vient du type de contrôleur IDE.

Lors de la création de la machine, le type de contrôleur IDE était PIIX3. Mais lors de la mise à jour de VirtualBox et du ré import de la machine le type est passé à PIIX4 ...

En repositionnant le type de contrôleur à PIIX3, le problème est corrigé.

mercredi, septembre 3 2008

12 conseils d'optimisation de PHP

1. Si une méthode peut être statique, déclarez la en statique. La vitesse sera améliorée par un facteur 4.

2. Évitez les commandes "magiques", comme

__get
__set
__autoload

3. Require_once () est gourmand en ressources.

4. Utilisez les fulls path dans les includes et requires, c'est du temps gagné à résoudre les chemins du système d'exploitation.

5. Si vous avez besoin pour connaître le moment où le script a commencé son exécution,

$ _SERVER [ 'REQUEST_TIME']

est recommandée plutôt que

time ()

.

6. Regardez si vous pouvez utiliser

__strncasecmp()
__strpbrk()
__stripos()

plutôt que

regex

.

7. str_replace est plus rapide que preg_replace, mais strtr est plus rapide que str_replace d'un facteur 4.

8. Si une fonction, comme par exemple un remplacement de chaîne accepte 2 tableaux et des caractères uniques comme arguments, et si votre liste d'arguments n'est pas trop longue, préférez l'écriture un peu redondante de remplacement des déclarations, en passant un caratère à la fois, plutôt qu'une ligne de code qui accepte des tableaux avec comme argument search et replace.

9. La suppression des erreurs à l'aide du caractère @ ralentit les scripts.

10.

$row['id']

est 7 fois plus rapide que

$row[id]

.

11. Les messages d'erreurs sont gourmand en ressources

12. N'utilisez pas de fonctions à l'intérieur de boucle comme

for ($x=0; $x < count($array); $x)

, la fonction count() étant appelée à chaque fois.

Pour vos templates, utilisez-vous Smarty? C'est probablement le moyen le plus rapide pour s'assurer que les pages les plus consultées du site soient mises en cache.

(sources : http://www.moskalyuk.com/blog/php-optimization-tips/1272)

lundi, septembre 1 2008

Mini-calendrier

Voici un mini-calendrier sous forme de fonction.

on appelle la fonction en faisant un echo Calendrier($annee,$mois,$evenements);

$annee et $mois sont des entiers,

$evenements est un tableau de la forme :

$evenements[] = array("date" => "2008-09-02", "evenement" => "Rentrée scolaire !!", "lien" => "http://monlien");

le fichier css permet de modifier l'apparence du calendrier.

Installer Dotclear 2 sur une base de donnée MyIsam au lieu de InnoDB chez Free.fr

Il faut savoir que chez Free.fr, le type de base de données InnoDB sous MySQL n'est pas disponible ...

Seul le format MyIsam est disponible.

Pour "forcer" l'installation de Dotclear sur ce format, quelques modifications de scripts s'imposent.

1) Modifier le script ./admin/install/check.php :

//$innodb = false;
$innodb = true;
/*
  while ($rs->fetch()) {
   if (strtolower($rs->f(0)) == 'innodb' && strtolower($rs->f(1)) != 'disabled' && strtolower($rs->f(1)) != 'no') {
  $innodb = true;
 break;
}
}
*/

2) Modifier le script ./inc/clearbricks/dbschema/class.mysql.dbschema.php

$sql =
'CREATE TABLE '.$this->con->escapeSystem($name)." (\n".implode(",\n",$a)."\n) ENGINE=MyIsam CHARACTER SET utf8 COLLATE utf8_bin ";

Avec ces modifications vous allez pouvoir utiliser Dotclear chez l'hébergeur Free.fr

Activer PHP5 chez Free.fr

Par défaut seul PHP4 est accessible sur un espace personnel Free.fr

Pour activer PHP5, le plus simple est de créer un fichier .htaccess contenant la ligne suivante : php 1 et de le déposer à la racine de votre site web,