Page 1 sur 1

Mais par où commencer avec PHP?

Posté : 29 août 2011, 12:36
par moxaline
Bonjour,
Dans une autre vie (il y a,hum, 12 ans), j'ai travaillé à la conception de sites web.

Inutile de dire que je parle là de la préhistoire et que ceux qui ont moins de 30 ans, à moins d'être archéologue, n'ont aucune idée de ce à quoi ressemblait une page en html4 pleine de gifs animés où le nec plus ultra de la mise en page était la combinaison de tableaux et d'images "invisibles" pour caler le texte où on le souhaitait)

Bref... le dinosaure que je suis vient de faire sa mise à jour en xhtml1 et css... mais pour le php, je ne sais même pas par où commencer.

Je suppose que je dois installer un genre de serveur PHP sur mon pc. Qu'est-ce qui convient le mieux pour un débutant?
Cela tourne sur windows ou je dois réinstaller un pc sous linux?
J'ai besoin d'un webserver local? (Apache? autre chose?)
Si possible, du freeware... et pas trop, trop gourmand en ressources vu que les pc qui traînent chez moi sont des genres d'antiquités...

Est-ce que vous pourriez me recommander l'un ou l'autre bon manuel ou tuto en PHP (même en anglais) qui me permettrait de me dépatouiller assez vite ???

Ah oui, puisque MySQL semble être la DB associée à PHP, j'aurais les mêmes questions : quel logiciel installer et l'un ou l'autre tuto...
Là, j'ai moins de soucis (dans ma deuxième vie, j'étais Oracle DBA et me débrouillais sur SQLServer, cela m'étonnerait que MySQL présente beaucoup de difficultés)

Merci de votre aide!

ImageMoxaline

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 12:43
par popy
Installe easyPhp, ça inclue php, mysql, apache, et des outils de dev comme phpmyadmin

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 13:38
par jojolapine
Un bon cours pour commencer :
http://www.siteduzero.com/tutoriel-3-14 ... mysql.html

Bon courage pour cette mise à niveau ;)

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 13:50
par Cyrano
Salut, je vais te faire une réponse un peu plus étendue en donnant quelques précisions.

Il est effectivement préférable d'installer en local un environnement de développement comportant PHP, un serveur Web Apache, ça fonctionnerait éventuellement aussi avec IIS mais les problèmes de configuration trouveront plus rapidement une réponse avec Apache, un serveur de base de données, MySQL est un choix classique mais tu peux aussi te tourner vers PostGreSQL qui monte doucement.
Ensuite quelques outils dont en particulier une application de gestion de tes bases de données : avec MySQL, il y a PHPMyAdmin qui est très bien fait pour ça, avec PostGreSql il existe me semble-t-il un outil similaire. Tu peux éventuellement aussi trouver d'autres serveurs de base de données en version gratuites quoique moins courantes selon tes besoins de développement, il y a entre autres Oracle, MS-SQL Server et il me semble qu'il existe aussi une version gratuire de DB2, la base IBM.

Il existe des environnements complets packagés. Popy a cité EasyPHP, il y a aussi WampServer et également XAMPP. Enfin il y a aussi le Zend Server en version Comunity gratuite très complet aussi. Dans tous ces cas là, tu auras Apache-PHP-MySQL et PHPMyAdmin.

Mes préférences personnelles sont dans l'ordre Zend Server, WAMP, et en troisièmes exaequo EasyPHP et XAMPP. L'intérêt du premier et du dernier cependant est qu'ils existent aussi bien pour Windows que pour Linux. Ce point peut être important si on songe que bien souvent on développe sous Windows (ou Mac) mais que l'hébergement est sous Linux.

Pour trouver chacun d'entre eux, demande à notre ami Google qui te répondra immédiatement.

Ensuite il va te falloir un éditeur pour coder, sous Windows il y a Notepad++, et pour toutes les plateformes, il y a Aptana Studio (environnement Eclipse) qui sont disponibles librement.

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 14:01
par Mazarini
En général, les hébergeur propose apache/PHP/MySQL, donc le plus simple est de se caler sur ce trio.

Pour ce qui est du PHP, j'ai commencé par des pages html "fixe" que j'ai couper en trois parties pour le début commun à toutes les pages, le contenu propre à la page et la fin commune à toute les pages.

Pour créer une page, cela se faisait :
<?PHP
initialisation de variables pour personnaliser debut.php et fin.php (pour le titre de la page par exemple)
?>
<?PHP include('debut.php'); ?>
Le contenu de la page proprement dit
<?PHP include('fin.php'); ?>

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 14:57
par moxaline
Merci pour ces réponses ;)

Donc, va pour l'environnement de développement complet.
Si j'ai bien vu, l'hébergement sera sous Unix ou Linux (chez OVH) mais je ne pense pas que cela va jouer beaucoup puisque xhtml, css, sql sont indépendants de la plateforme (lePHP sans doute aussi mais comme je ne connais pas)

Oracle, MS-SQL ou DB2, même si j'y serais parfaitement à l'aise, ne conviennent pas car le projet a un budget d'à peu près 0 euro (raison pour laquelle on réveille les dinosaures). Apache, c'est parfait, je connais l'administration de base (sous linux mais c'est sans doute assez proche sous windows)

On va dire MySQL parce que j'ai vu qu'OVH proposait cette db.
Donc, Zend ou EasyPHP??? Si le plus complet est Zend, je vais tenter de le faire tourner sur mon vieux portable... Si je peux éviter la reconfiguration d'un pc en linux, j'aime autant : le site devrait être bouclé dans les grandes lignes pour la fin de la semaine.

Pour l'éditeur, on m'a filé une version de dreamweaver8 avec le bébé (pardon, les 80 pages à convertir en site)
Cela me va, je peux y taper mon code sans qu'il m'insulte et il n'ajoute pas plein de saletés incompréhensibles tout seul. En plus, il gère très bien les templates et c'est parfait pour moi, vu les nombreux changements d'avis de ma commanditaire (qui confond un site web avec un document en publisher :roll: ).
Il a probablement des tas d'autres fonctionnalités mais comme j'explore en même temps que je produis des pages...

Les trois ou quatre trucs que j'essaye de résoudre pour lesquels j'ai l'impression qu'on me renvoie systématiquement sur PHP :

- la collecte des données d'un formulaire d'inscription (pour l'instant, j'ai mis un action:mailto mais ce n'est pas assez ergonomique)

- l'inscription à une newsletter qui s'enverrait automatiquement aux abonnés lorsque le site est mis à jour (alors là????????? :shock: )

- une galerie photo sous forme d'album à feuilleter (pour l'instant, j'ai bricolé une sorte de thumbnail et zoom avec css) MAIS je n'arrive pas à afficher les légendes en-dessous des photos sans qu'elle ne dépasse la largeur (variable) de la photo.

- un calendrier qui s'afficherait mois par mois, sous forme réduite à gauche, avec la description de l'évènement qui s'afficherait droite quand on clique sur le jour (les mois doivent pouvoir défiler grâce à des flèches)

Si vous avez des idées, je suis très preneuse ;)

Merci

Moxaline

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 16:31
par sirakawa
Il faut avant tout s'enquérir des versions de PHP qu'utilise le fournisseur pour mettre en accord ce qu'on programme avec ce qu'on publie; j'ai un compte chez Ouvaton, sur lequel je faisais tourner un bon vieux Spip. Une mise à jour de Ouvaton passa à dieu sait quel php 5.x qui posait problème avec le spip incriminé, ou bien le transport de je ne sais quelle bidouillerie à moi chez SFR pour découvrir que certaines fonctions étaient absentes...

[list]easy PHP 5.3.8 VC9 | Apache 2.2.19 VC9 | MySQL 5.5.15 | PhpMyAdmin 3.4.3.2 | Xdebug 2.1.2
Xamp windows Apache 2.2.17 MySQL 5.5.8 PHP 5.3.5 phpMyAdmin 3.3.9 FileZilla FTP Server 0.9.37
Wamp Apache 2.2.17 - Php 5.3.5 (version 32 bits) - Php 5.3.4 (version 64 bits) - Mysql 5.1.53 (version 64 bits) - Mysql 5.5.8 (version 32 bits) - XDebug 2.1.0-5.3-vc6 (32 bits) - XDebug 2.1.0-5.3-vc9 (64 bits) - XDC 1.5 - PhpMyadmin 3.3.9 - SQLBuddy 1.3.2 - webGrind 1.0[/list]

Moi, quand ça ne php pas (pages d'aide....), j'édite avec BlueFish dont le seul défaut est de laisser traîner des fichiers temporaires.
Quand ça PHP je me sers de Eclipse (il y a une extension PHP)...
Javascript, dont je ne raffole pas, permet plein de trucs, et en particulier d'intervenir sur les propriétés des éléments de la page (c'est précisément ce que fait Dreamweaver avec les scénarios, et là que j'ai acquis les quelques trucs dont je mes sers : du genre en cliquant sur un bouton afficher une page d'aide qu'on referme en cliquant sur son fond....)

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 16:45
par Cyrano
Si j'ai bien vu, l'hébergement sera sous Unix ou Linux (chez OVH) mais je ne pense pas que cela va jouer beaucoup puisque xhtml, css, sql sont indépendants de la plateforme (lePHP sans doute aussi mais comme je ne connais pas)
XHTML et CSS sont des langages clients exécutés par les navigateur sur les machines des internautes, donc effectivement la plateforme d'hébergement n'a à cet égard aucune espèce d'importance. Pour PHP en revanche, il peut y avoir de petites variantes entre une installation sous Windows et une autre sous UNIX/Linux, certaines fonctions du langages pouvant n'être pas disponibles sous Windows, mais ça reste relativement marginal.
Apache, c'est parfait, je connais l'administration de base (sous linux mais c'est sans doute assez proche sous windows)
Même remarque que ci-dessus à propos de PHP, c'est relativement mineur.
On va dire MySQL parce que j'ai vu qu'OVH proposait cette db.
Donc, Zend ou EasyPHP??? Si le plus complet est Zend, je vais tenter de le faire tourner sur mon vieux portable... Si je peux éviter la reconfiguration d'un pc en linux, j'aime autant : le site devrait être bouclé dans les grandes lignes pour la fin de la semaine.
« vieux PC », enfin il faudrait quand même éviter de ressortir une machine antédiluvienne du genre tournant avec un PIII 750Mghz avec 128Mo de RAM et un disque dur de 8Go qui devait être à la pointe il y a une douzaine d'année sous Windows 98, mais qui aura peut-être un peu de mal à suivre un Zend Server...
Les trois ou quatre trucs que j'essaye de résoudre pour lesquels j'ai l'impression qu'on me renvoie systématiquement sur PHP :

- la collecte des données d'un formulaire d'inscription (pour l'instant, j'ai mis un action:mailto mais ce n'est pas assez ergonomique)

- l'inscription à une newsletter qui s'enverrait automatiquement aux abonnés lorsque le site est mis à jour (alors là????????? :shock: )

- une galerie photo sous forme d'album à feuilleter (pour l'instant, j'ai bricolé une sorte de thumbnail et zoom avec css) MAIS je n'arrive pas à afficher les légendes en-dessous des photos sans qu'elle ne dépasse la largeur (variable) de la photo.

- un calendrier qui s'afficherait mois par mois, sous forme réduite à gauche, avec la description de l'évènement qui s'afficherait droite quand on clique sur le jour (les mois doivent pouvoir défiler grâce à des flèches)
Là, il faudrait séparer tes questions et les poster sur ce même forum, mais en donnant quand même quelques précisions :
  • Pour le formulaire, tu veux faire quoi des données au juste ? parce qu'un mailto va juste envoyer les réponses mais rien enregistrer du tout...
  • la newsletter, ce ne serait pas bien compliqué, mais ça doit être prévu dans ton système de mise à jour, ceci dit ça implique qu'il y a des abonnés, qu'ils sont dans la base de données et que tu enregistres les envois histoire d'éviter les envois de doublons mais pour n'oublier personne non plus pas plus que d'envoyer du reste à ceux qui ont souhaité se désinscrire....
  • Problème de mise en forme, pose ta question dans le forum HTML, en montrant les parties pertinentes du code, tu auras sûrement des réponses pertinentes;
  • calendrier, un peu comme dans les blogs je présume ? Même chose, selon que c'est un problème de programmation ou de code HTML, pose les questions détaillées dans le forum qui s'y rapporte le mieux, donc ici (Débuter en PHP) ou HTML, ou encore JavaScript, ça dépend de la nature de ton problème.
En fait j'ai l'impression que tu ne débutes pas spécialement en informatique, sauf que la programmation web ne fait pas spécialement partie de ton quotidien, je me trompe ? Savoir d'où tu pars pourra servir aussi à te fournir des réponses plus appropriées si nécessaire.

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 20:12
par moxaline
Non, je débute pas vraiment en informatique (euh, j'ai commencé il y a 17 ans :mémé:)

Et si j'ai vécu les débuts du web, j'ai arrêté il y a 12ans. En même temps que l'administration réseau (Novell Netware et Windows)
Après, j'ai évolué vers l'administration de DB (Oracle DBA) et travaillé plutôt sur gros système (Open VMS, HP-Unix, Unix, Linux). Il se trouve qu'il existe un portal en Oracle et que cela tourne sur Apache (et Websphere mais on s'en fout). Et dans les grosses boîtes, les DB Oracle doivent communiquer avec des tas de chose, comme MS-SQL et DB2.

Là, cela fait un an que j'ai entamé mon 3e (ou 4e?) gros virage : plus d'informatique, juste de l'environnement (écologie, précisons :twisted: )

Et donc,
Je ne connais plus rien au hardware PC.
Le xhtml et le css, depuis 1 semaine, j'ai fait de sacrés progrès.
Je peux encore causer ergonomie de site, charte graphique, logique de communication, etc. (j'ai enseigné cette matière et c'est bien le seul truc qui n'a pas trop changé... puis, à la base, je suis journaliste :twisted: )
Connais rien en PHP ni en général, en programmation pure et dure (disons que je me contente du PL-SQL, du shell script et du DCL mais bon, je sais lire)

Ah oui, les infos système de mon PC:

AMD Athlon 64 Processor
3000+
1,80GHz 1,50 Go RAM
sous XP
HD 150G

Et on ne rigole pas (mais c'est quand même mieux qu'un P3 ou un P4 :mrgreen: )

Pour le reste, je vais tenter de préciser mes questions au fur et à mesure.

C'est juste que si je dois apprendre PHP de manière à en avoir une utilisation basique d'ici le WE, j'ai intérêt à commencer :wink:

Et la question qui tue, Il y a vraiment tant de problèmes de compatibilité entre un PHP 5.3.5 et un 5.3.8 ? :shock:

M'en vais installer EasyPHP (a gagné le concours de vitesse du téléchargement :lol: )

Et m'arracher les cheveux sur la galerie photo...

Re: Mais par où commencer avec PHP?

Posté : 29 août 2011, 21:24
par Cyrano
Et la question qui tue, Il y a vraiment tant de problèmes de compatibilité entre un PHP 5.3.5 et un 5.3.8 ? :shock:
Non, ce sont en général des corrections de bugs entre les versions mineures de cet ordre ;)

Pour le reste, la programmation, ça reste de la logique et pour en avoir fait un tout petit peu, le PL-SQL ne déroge pas vraiment à cette règle, donc tu as des bases importantes à savoir que tu sais à priori de servir de structures de contrôle (IF/ELSE) et de boucles. Avec PHP, il n'y a que le vocabulaire qui change si on résume de façon un peu lapidaire.

Sinon petit truc pratique : si tu identifies bien un problème, c'est que tu l'as bien compris et ça représente déjà les 3/4 de la réponse, pour le reste, tu le trouveras d'autant plus rapidement ici, soit dans les archives du forum avec le moteur de recherche soit en posant les questions si tu ne trouves pas ton bonheur dans l'expérience passée des autres.

Et pour certains éléments complexes, il n'est pas forcément obligatoire de ré-inventer la roue, il existe des scripts complets parfois bien faits que tu pourras utiliser. Pour ta galerie photo, je ne suis pas un spécialiste en la matière mais je serais surpris qu'il n'existe pas déjà des tonnes de codes librement utilisable sur Internet voire pas trop difficiles à adapter. D'autres que moi t'aiguilleront probablement mieux sur ce point.

Bon courage :)