Rechercher : dans
Par :

[PhP] Comment optimiser

Dernière réponse le 28 aoû 2009 à 10:06:06 P@, le 23 fév 2006 à 14:44:17 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un souci dans une application web.
Le fait est que j'ai un bug du type Fatal error: Maximum execution time of 30 seconds exceeded in .
Je pense que si mon code était optimisé il prendrait moins de temps et parconséquent j'éviterait cette erreur qui stop le process.

Pour tout vous dire l'erreur arrive au cours d'une boucle for aprés 1 ou 2 passage ... sauf que je voudrais pouvoir monter à beaucoup plus que 1 ou 2 passage !!!

Comment optimise t on une application web faite en php ??
Merci d'avance pour votre aide
..:::P@ ... a tras, a PoOf ou a chou :::..

Meilleures réponses pour « [PhP] Comment optimiser » dans :
Optimiser la taille des images PNG Voir On peut optimiser de manière importante la taille des fichiers PNG, ce qui est particulièrement intéressant pour les pages web. La méthode décrite ci-dessous permet de réduire les fichiers PNG en moyenne à 40% de leur taille originale. Comment...
[PHP] Upload de fichiers VoirLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La...
Optimiser Firefox VoirOptimisation avec Haut Débit Si votre ordinateur a un processeur peu puissant Optimiser l'utilisation de la mémoire Logiciel d'optimisation de Firefox J'ai fait une fausse manipulation J'ai créé une valeur/chaîne de trop J'ai mal attribué...
Comment optimiser Windows ? VoirVoici quelques astuces qui vous permettront d'optimiser au mieux les ressources de Windows (XP et Vista) afin d'obtenir une utilisation plus agréable ! Notez qu'il faut redémarrer le PC pour que les modifications effectuées soient...
Télécharger PHP Edit VoirPHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de fonctionnalités permettant de développer plus efficacement : Coloration syntaxique Auto-complétion des fonctions Débuggeur...
PHP - Récupération de données VoirPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...
PHP - Les fichiers VoirLa gestion des fichiers avec PHP Avec PHP, la création ou la lecture de fichiers est, une fois de plus, assez simple. Il existe une multitude de fonctions dédiées à l'utilisation des fichiers. La communication entre le script PHP et le fichier...
PHP - Les variables VoirConcept de variable avec PHP Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois...

1

Misdrhaal, le 23 fév 2006 à 15:01:45

Donne nous ton code, le contenu de tes tables et on pourra te répondre.

sinon tu peux toujours mettre un

set_time_limit(0)

mais tu laisserai alors la porte ouverte aux bocles infinies...

Répondre à Misdrhaal

2

Zep3k!GnO, le 23 fév 2006 à 15:14:39

Y a pas des optimiseur de script, ou des trucs qui flent direct la temps d'éxécution du script et des boucles ? !
je croyais que ca existait... mais p'tet que je suis à l'Ouest.. :\ Zep3k!GnO

On est des rangers mec, des rangers...

Répondre à Zep3k!GnO

3

P@, le 23 fév 2006 à 15:17:51

Pour ce coin particuler, j'utilise une table temporaire que je rempli.
Par la suite j'appelle une autre fonction qui sort les données avec une boucle for

function envoie($sujet,$messagecenter,$pdfup,$serviceTotal,$newsid){
	$QUERY = mysql_query("SELECT DISTINCT email,id,nom,prenom,fonction,nomOrganisation FROM envoie ");
	$RESULT = mysql_num_rows($QUERYecrRECIPIENT);

		$log='';
		for($x=0;$RESULT!=$x;$x++)
		{
			$NOM = mysql_result($QUERY,$x,"nom");
			$PRENOM = mysql_result($QUERY,$x,"Prenom");
			$NOMORGA = mysql_result($QUERY,$x,"nomOrganisation");
			$email = mysql_result($QUERY,$x,"email");
			$recipientID= mysql_result($QUERY,$x,"id");
			$FONCTIONnom= mysql_result($QUERY,$x,"fonction");
			$log[]=	Array('ID'=> $recipientID,'NOM'=> $NOM,'PRENOM'=> $PRENOM,'MAIL'=> $email,'ORGANISATION'=> $NOMORGA);
			$message = Personalise($NOM,$PRENOM,$NOMORGA,$FONCTIONnom,$messagecenter);

			envoierMail($email,$sujet,$message,$message,$pdfup);

		}
	logMail ($log, $dateUp);
}


et une autre qui envoie le mail
function envoierMail($email,$sujet,$html,$text,$pdfUp=''){
	$mail = new PHPMailer();
	$mail->IsSMTP();
	$mail->Host = "xxx.xxx.xx";
	$mail->SMTPAuth = true;
	$mail->Username = "xxx@xx.xx";
	$mail->Password = "";

	$mail->From = "zzz@eee.ee";
	$mail->FromName = "ZZZZZZ";
	$mail->AddAddress($email);
	$mail->AddReplyTo("", "Information");

	$mail->WordWrap = 150;
	$mail->IsHTML(true);

	$mail->Subject = stripslashes($sujet);
	$mail->Body    = stripslashes($html);
	$mail->AltBody = stripslashes($text);
	if(isset($pdfUp)){
		$mail->AddAttachment($pdfUp);       
	}

	if(!$mail->Send())
	{
	   echo "Message could not be sent. <p>";
	   echo "Mailer Error: " . $mail->ErrorInfo;
	   exit;
	}
	echo "j'ai un pdf !!";
    $mail->ClearAddresses();
    $mail->ClearBody();
    $mail->SmtpClose();
	unset($mail);
}

voilà .... je sais ca fait un max de boucle ... mais bon ..:::P@ ... a tras, a PoOf ou a chou :::..

Répondre à P@

4

P@, le 23 fév 2006 à 15:36:19

Ca ne répond pas à toutes les questions ...
Et ne résoult pas les miens, mais c'est intéréssant
http://www.vulgarisation-informatique.com/optimiser-php.php ..:::P@ ... a tras, a PoOf ou a chou :::..

Répondre à P@

5

Zep3k!GnO, le 23 fév 2006 à 16:31:29

Bah à part mon truc de sleep(2); je vois pas trop ce qui pourrait te décoincer (le code j'entend :P) ...
J'vais aller matter ton lien, merki !
--> ca y c'est lu..bin cool en gros j'ai l'habitude de coder avec les meilleures fonctionnalitées , tant mieux :P Zep3k!GnO

On est des rangers mec, des rangers...

Répondre à Zep3k!GnO

6

Nicolas, le 24 fév 2006 à 12:51:32

J' ai deja rencontré se probleme ulterieurement.
Je n'est pas easy php devant les yeux mais je sais qu'il est possible de modifier le temps d'execution maximal accordé au chargement d 'une page.
Il me semble que ce-ci est expliqué dans la rubrique 'aide' du logiciel.
Bonne chance

Répondre à Nicolas

7

P@, le 24 fév 2006 à 13:03:19

J'ai agrandi max_execution_time à 60
Et maintenant, j'ai une autre erreur
Warning: fsockopen(): unable to connect to smtp.www.fr:25 in PATH\class.smtp.php on line 105
Message could not be sent.

Mailer Error: Language string failed to load: connect_host


Ce qui veux dire ??
..:::P@ ... a tras, a PoOf ou a chou :::..

Répondre à P@

8

Zep3k!GnO, le 24 fév 2006 à 13:54:00

Alors ça , ça veut dire qu'il y a un problème avec ton envoi de mail car l'envoi se fait a travers une socket.. le soucis vient d'après ce message de ton serveur smtp qui est configuré sur : smtp.www.fr:25
et il manque je pense le domaine :) comme on le voit c'est www.fr et non www.monServeurSMTP.fr avec monServeurSMTP = ton serveur stmp ;)
et ca normalement tu peux le changer dans le fichier httpd.conf ou php.ini je ne me souviens plus (dsl :| ) dans ton répertoire Apache.

Voili, voilOo :) Zep3k!GnO

On est des rangers mec, des rangers...

Répondre à Zep3k!GnO

9

P@, le 24 fév 2006 à 14:23:09

Non, j'ai remplacer le domaine par www.
j'admet c'est pas trés malin .... mais le smtp est bon ... puisqu'il fonctionne trés bien sans piéce jointe :(

... Alors ducoup je ne sais que faire ..:::P@ ... a tras, a PoOf ou a chou :::..

Répondre à P@

10

P@, le 24 fév 2006 à 15:52:07

Allo,

j'ai changé de class.
J'ai pris LibMail (http://lwest.free.fr/doc/php/lib/index.php3?page=mail&lang=fr) pour remplacer PhPMailer ... et Ca MARCHE ...........; PourVU que ca DUR

Par contre le max_execution_time est toujours à 60 ..:::P@ ... a tras, a PoOf ou a chou :::..

Répondre à P@

11

Zep3k!GnO, le 24 fév 2006 à 16:20:05

Par contre le max_execution_time est toujours à 60 c'est bien ,ç aévite a ton script de tourner a l'infini s'il est coincé dans une boucle :D Zep3k!GnO

On est des rangers mec, des rangers...

Répondre à Zep3k!GnO

12

P@, le 24 fév 2006 à 16:29:21

Faut pas rever ... dés que j'ajoute plus de contacts ... ca tombe !!!
MERDE §§§§§§§§§§§§§§§§
J'ai pas envie de me mettre a 0 limit !! ..:::P@ ... a tras, a PoOf ou a chou :::..

Répondre à P@

13

P@, le 27 fév 2006 à 13:07:15

De retour, dés Lundi ...

Dés que ma piéce jointe est "lourde" (+10ko) ou que j'ai un beaucoup de mail ... ca plante.
Comment je peux faire pour éviter ca ??
J'ai du mal ... car je ne voudrais pas limiter l'appli en terme de nombre d'envoie et pour le poid je peux limiter ... mais 10k c'est court !!!

Y a t il des idées ??

Merci d'avance
..:::P@ ... a tras, a PoOf ou a chou :::..

Répondre à P@

14

 shoops, le 9 avr 2009 à 11:24:36

Bonjour
je suis un développeur informatique, spécialisé dans le développement web, si vous avez des questions concernant l'optimisation PHP, JQuery, Ajax et Smarty.... vous pouvez les poser sur http://www.shoops.fr/forum/univer/10/informatique-0.php je passe régulierement sur Shoops.fr

Merci

Répondre à shoops
Collection CommentÇaMarche.net