Précédent   Forum du club des développeurs et IT Pro > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 24/08/2011, 09h53   #81
Georges974
Invité régulier
 
Homme Georges
Ingenieur-retraité-electronique
Inscription : mai 2011
Messages : 85
Détails du profil
Informations personnelles :
Nom : Homme Georges
Localisation : Réunion

Informations professionnelles :
Activité : Ingenieur-retraité-electronique

Informations forums :
Inscription : mai 2011
Messages : 85
Points : 6
Points : 6
Bravo!
félicitation pour ce tuto , même moi, retraité, ingénieur électronicien je suis captivé par les exemples concrets.
Surtout que je n'ai aucune pratique sur les bases de données en phpAdmin et MySQL.

Pour l'étape 6 j'ai aussi eu un petit problème.
J'ai modifié fonctions.php:

Code :
1
2
3
4
5
6
<?php
function connectmabase(){
$GLOBALS["base"] = mysql_connect ('localhost', 'root', '');  
    mysql_select_db ('mabase', $GLOBALS["base"]) ;
	}
?>
et aussi cordialement
Georges974
Georges974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 16h35   #82
CinePhil
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 13 659
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 49
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 13 659
Points : 25 568
Points : 25 568
Envoyer un message via MSN à CinePhil
Wow ! Quel boulot !
J'ai parcouru rapidement quelques chapitres, c'est vraiment bien fait !

Une toute petite remarque cependant...
Lorsqu'il y a un bloc d'instructions encadré par des accolades, je préfère mettre l'accolade ouvrante sous la ligne qui initie le bloc :
Code :
1
2
3
4
if(condition)
{
    instructions();
}
Ainsi il est plus facile de retrouver l'accolade ouvrante en partant de l'accolade fermante. Notamment sous Eclipse : cliquez juste à droite de l'accolade fermante, remontez le code avec la molette de la souris et vous finirez, si vous avez correctement indenté le code, par trouver l'accolade ouvrante, entourée d'un léger rectangle, juste à gauche du curseur.

Ce que je fais aussi quand un bloc d'instruction est long : j'indique en commentaire de l'accolade fermante la ligne qui a lancé le bloc :
Code :
1
2
3
4
5
6
7
8
if(conditon)
{
    /* long bloc d'instructions */
} // Fin de if(conditon)
else
{
    /* autre long bloc d'instructions */
} // Fin du else de if(conditon)
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Autoentrepreneur.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise la suite Linux Mageïa !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 10h41   #83
Feneck91
Membre régulier
 
Inscription : février 2007
Messages : 142
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : février 2007
Messages : 142
Points : 96
Points : 96
Très bon tutoriel. Connaissant un bon nombre de langage (c++ en particulier) j'ai pu très rapidement prendre un main php avec ce tutoriel.
Toutefois, tu préconises d'utiliser des simple quotes pour les chaînes de caractères côté php et double quote (guillemets) pour les chaîne côté html (je ne sais plus où j'ai lu ça). Bon, je me suis dit Ok, elle sait de quoi elle parle.
Du coup j'ai utilisé des \n\r dans une chaine simplement quoté et j'ai mis des heures à trouver pourquoi ma requête POST ne fonctionnait pas (je viens lire un autre site à partir du mien) ... c'est parce que la chaîne du header n'était pas en double quote et du coup, les \r\n n'étaient pas bien interprétés.

Il serait peut être important d'expliquer les différences entres les chaînes simple et double quote, on ne peut pas prendre l'un ou l'autre sans que ça n'ai de répercusion... et j'ai pas encore vraiment bien compris les différences....

En tout cas, félicitation pour ce tuto.
Feneck91 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 18h01   #84
BorixInformatix
Invité de passage
 
Homme Boris Plante
retraité et web designer
Inscription : janvier 2012
Messages : 1
Détails du profil
Informations personnelles :
Nom : Homme Boris Plante
Localisation : Canada

Informations professionnelles :
Activité : retraité et web designer
Secteur : Enseignement

Informations forums :
Inscription : janvier 2012
Messages : 1
Points : 2
Points : 2
Par défaut utf-8 et mysql

Bonjour du Québec,

Je travaille sur Mac avec Mamp, J'ai fait ton tuto à la fin de décembre 2011.
Pour le traitement de texte, j'ai employé TextMate. Excellent et très bon prix.

Malgré les petites différences d'affichage de MAMP, ton tuto est facile à employer.
Excellent tuto.

Voici quelques commentaires, pour aider ceux qui auraient les mêmes comportements de leur sQL.

1) Intro: ma configuration
Comme je travaille en français, dans mon entête <head> du html, j'ai toujours cette ligne :
meta http-equiv="content-type" content="text/html; charset=utf-8" />

Mes fichiers sauvés avec TextMate sont toujours encodés en utf-8

et dans les tp y compris agenda.php avec le array, mon affichage respectaient les accents.
exemple : rue des éléphants.

2) Commentaires pour les tp6 et tp7 sur la base abonnement.

Lors de l'ajout de données, j'ai testé les caractères spéciaux.
Exemple: Bérâut et Évêque.


Comme je travaille avec le jeu de caractères UTF-8 dans MySql, mes lignes sur la table «*abonnnees »
étaient remplacées par deux caractères.
exemple: â devenait â et Zézette se lisait Zézette

Voici un lien qui m'a aidé à arranger le tout.

http://electron-libre.fassnet.net/utf8.php

Suivant les conseils de cet article j'ai changé le code pour ceci.
Code :
1
2
3
4
5
6
7
8
9
10
11
 
function connectMaBase($nomBase){
    	$base = mysql_connect ('localhost', 'root', 'root');
 	if(!$base) {
		die('Could not connect: ' . mysql_error());
	}
//	echo 'on se connecte sur '.$nomBase.' ok';
    	mysql_select_db ($nomBase, $base) ;
	mysql_query("SET NAMES 'utf8'");
 
}
en ajoutant cette ligne
Code :
		mysql_query("SET NAMES 'utf8'");
Le tout fonctionne très bien, maintenant.

3) Un second problème fut les numéros de téléphone int (10):

8192815678 devenait 2147483647 qui est le max int sur un système 32-bit

Solution facile : choisir bigInt. Mais il y aurait mieux à faire avec varchar et une validation et les expressions régulières.

Merci pour ce gentil tutoriel, très apprécié!

Boris
BorixInformatix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2012, 08h43   #85
Jeannot45
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Retraité
Inscription : octobre 2004
Messages : 2 897
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 64
Localisation : France, Loiret (Centre)

Informations professionnelles :
Activité : Retraité
Secteur : Enseignement

Informations forums :
Inscription : octobre 2004
Messages : 2 897
Points : 6 481
Points : 6 481
Bonjour,

Je suis avec beaucoup d’intérêt les différentes étapes du tuto.
J'en suis arrivé à l'étude des bases de données et voilà mon problème :
Je ne peux pas utiliser phpMyAdmin. Je n'ai pas accès à la page.

Citation:
Envoyé par Wamp"
Forbidden

You don't have permission to access /phpmyadmin/ on this server.
Aurais-je manqué une étape lors de l'installation de Wamp.
Merci pour le petit coup de pouce qui me permettra de continuer l'aventure
__________________
Jeannot

Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA

Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/10/2012, 08h25   #86
Jeannot45
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Retraité
Inscription : octobre 2004
Messages : 2 897
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 64
Localisation : France, Loiret (Centre)

Informations professionnelles :
Activité : Retraité
Secteur : Enseignement

Informations forums :
Inscription : octobre 2004
Messages : 2 897
Points : 6 481
Points : 6 481
Bonjour,

En fouillant dans l'aide de Wamp, j'ai fini par trouver.

Citation:
Envoyé par aide de WAMP
17 - Accès à PhpMyAdmin interdit "Forbidden You don't have permission to access /phpmyadmin/ on this server."
Éditer le fichier "wamp\alias\phpmyadmin.conf" et remplacer

par

Code :
Allow from localhost 127.0.0.1
ou, si vous votre système supporte IPv6, par

Code :
Allow from localhost ::1 127.0.0.1
Tout va bien pour l'instant

Bonne journée
__________________
Jeannot

Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA

Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/11/2012, 05h13   #87
olivierdauxais
Invité régulier
 
Homme Olivier Dauxais
Apprenti web
Inscription : novembre 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Olivier Dauxais
Localisation : France

Informations professionnelles :
Activité : Apprenti web

Informations forums :
Inscription : novembre 2012
Messages : 4
Points : 5
Points : 5
Par défaut Excellent tuto

Bonjour Sylvie,
Jusqu'à présent, je n'ai étudié que les 4 premiers chapitres de votre tuto, et d'ores et déjà, je vous remercie pour votre excellent tuto.
Merci beaucoup et encore Bravo.
Cordialement.
H Olivier Dauxais.
olivierdauxais est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2012, 12h43   #88
olivierdauxais
Invité régulier
 
Homme Olivier Dauxais
Apprenti web
Inscription : novembre 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Olivier Dauxais
Localisation : France

Informations professionnelles :
Activité : Apprenti web

Informations forums :
Inscription : novembre 2012
Messages : 4
Points : 5
Points : 5
Par défaut Decevant sur la fin.

Tres bien jusqu'au chapitre 5 et début du 6 mais après...
Tres decevant sur la fin des chapitres 6 et 7 où les exemples cités ne marchent pas...
olivierdauxais est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/11/2012, 18h11   #89
ABCIWEB
Expert Confirmé
 
Homme Alain
Inscription : septembre 2010
Messages : 1 917
Détails du profil
Informations personnelles :
Nom : Homme Alain
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : septembre 2010
Messages : 1 917
Points : 2 852
Points : 2 852
Effectivement les chapitres sur la bdd ne sont pas les plus réussis. Il manque en particulier (je l'avais déjà signalé dans un précédent post) l'emploi de la fonction mysql_real_escape_string pour protéger les variables dans les requêtes.
Aussi, avec les changements de configuration des serveurs qui sont intervenus depuis 2009, entre autre magic_quote_gpc sur off, il est normal que les requêtes ne fonctionnent pas pour peu que tu intègre des quotes ' ou doubles quotes " dans les variables.
Par exemple la requête :
Code :
$sql = 'INSERT INTO Utilisateurs VALUES("","'.$pseudo.'","'.$sexe.'","'.$age.'","'.$today.'")';
doit être remplacée par
Code :
$sql = 'INSERT INTO Utilisateurs VALUES("","'.mysql_real_escape_string($pseudo).'","'.mysql_real_escape_string($sexe).'","'.mysql_real_escape_string($age).'","'.mysql_real_escape_string($today).'")';
même principe pour les autres requêtes (le non emploi de cette fonction constitue par ailleurs un trou de sécurité majeur, car possibilité d'injection sql).
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2012, 17h00   #90
olivierdauxais
Invité régulier
 
Homme Olivier Dauxais
Apprenti web
Inscription : novembre 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Olivier Dauxais
Localisation : France

Informations professionnelles :
Activité : Apprenti web

Informations forums :
Inscription : novembre 2012
Messages : 4
Points : 5
Points : 5
Par défaut Merci

Merci ABCIWEB pour l'info.
Connaitrais-tu un autre tuteur simple et bon pédagogue avec pleins d'exemples pour créer avec PHP et MySQL un site avec base de donnée?

Le Wamp que j'ai sur ma bécanne date de 2 ou 3 ans déjà.
Devrais-je chercher à télécharger une version de Wamp plus récente?

Cordialement.
H Olivier Dauxais.
olivierdauxais est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2012, 19h15   #91
ABCIWEB
Expert Confirmé
 
Homme Alain
Inscription : septembre 2010
Messages : 1 917
Détails du profil
Informations personnelles :
Nom : Homme Alain
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : septembre 2010
Messages : 1 917
Points : 2 852
Points : 2 852
Citation:
Envoyé par olivierdauxais Voir le message
Merci ABCIWEB pour l'info.
Connaitrais-tu un autre tuteur simple et bon pédagogue avec pleins d'exemples pour créer avec PHP et MySQL un site avec base de donnée?
Avec ce tuto tu as aperçu les grandes lignes. Après faudra approfondir telle ou telle question et suivre des tutos plus spécialisés suivant tes besoins.

Pour mysql, les mots "tuto mysql" donneront de bons résultats dans google.

Sinon un bon exercice pour commencer php est de faire un livre d'or avec gestion des membres, c'est à dire le même principe qu'un mini forum avec un seul sujet. Cela permet de voir les formulaires, l'enregistrement en bdd et la lecture des données, et l'inscription et la connexion dans un espace membre permet de comprendre les premières règles de sécurité et la gestion des variables de sessions. C'est assez "complet".

Concernant ton serveur local, bah il faut qu'il faut au moins aussi récent que celui que tu pourrais utiliser sur un serveur distant chez un hébergeur. Le minimum actuel est php5.2, 5.3 est mieux et php5.4 est actuellement le top. Plus la version est récente, plus tu auras de fonctionnalités disponibles.
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/03/2013, 13h30   #92
Lcf.vs
Membre confirmé
 
Homme
Inscription : octobre 2007
Messages : 323
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Belgique

Informations professionnelles :
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2007
Messages : 323
Points : 237
Points : 237
Par défaut Les quotes

Hello,

La convention que tu établis pour l'usage des simples ou doubles quotes est très bien... néanmoins, je pense qu'il serait utile de préciser pourquoi, en PHP, on n'utilise pas les doubles.

Sans cela, crois-tu vraiment que la majorité des débutants vont se prendre la tête à utiliser des simples?

(énormément de confirmés ne le font déjà pas... ^^)
__________________
Code :
1
2
3
if(is_file('/jquery.*\.js/')){
	deltree;
}
Lcf.vs est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/03/2013, 14h04   #93
Celira
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 4 259
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 28
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java
Secteur : Industrie

Informations forums :
Inscription : avril 2007
Messages : 4 259
Points : 8 364
Points : 8 364
Vous cherchez une explication pour les quotes ? Il y a un tuto pour ça : PHP - Apostrophes ou guillemets : lesquels choisir ?
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [CODEINLINE=php][/CODEINLINE]
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/03/2013, 15h11   #94
olivierdauxais
Invité régulier
 
Homme Olivier Dauxais
Apprenti web
Inscription : novembre 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Olivier Dauxais
Localisation : France

Informations professionnelles :
Activité : Apprenti web

Informations forums :
Inscription : novembre 2012
Messages : 4
Points : 5
Points : 5
Merci Celira pour ce lien.

J'aime beaucoup toutes les explications de Pierre-Baptiste Naigeon qui est un très bon pédagogue.

En effet, les simples quotes ont toute leur utilité dans la lisibilité et la simplicité d'un codage PHP.
Ce site marche bien mais je ne sais nullement si il peut être facilement piraté.

Au plaisir d'avoir de vos nouvelles si vous y trouvez des failles.

Cordialement.
H Olivier Dauxais.
olivierdauxais est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/03/2013, 16h39   #95
Lcf.vs
Membre confirmé
 
Homme
Inscription : octobre 2007
Messages : 323
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Belgique

Informations professionnelles :
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2007
Messages : 323
Points : 237
Points : 237
Celira,

Je ne cherchais pas cette info mais, comme il s'agit d'un tuto pour débutants, je trouve qu'il est important de savoir que cela influe sur les performances.

Je ne connaissais pas le tuto sur les quotes, en revanche. Mais, perso, juste sous ta convention, je linkerais ce tuto, à titre informatif...
__________________
Code :
1
2
3
if(is_file('/jquery.*\.js/')){
	deltree;
}
Lcf.vs est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/03/2013, 16h46   #96
grunk
Modérateur
 
Avatar de grunk
 
Homme Olivier
Développeur Web
Inscription : août 2003
Messages : 2 497
Détails du profil
Informations personnelles :
Nom : Homme Olivier
Âge : 28
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Développeur Web
Secteur : Industrie

Informations forums :
Inscription : août 2003
Messages : 2 497
Points : 5 208
Points : 5 208
Citation:
Envoyé par Lcf.vs Voir le message
Celira,
'il est important de savoir que cela influe sur les performances.
C'est tellement anecdotique en terme de performance comparer à un mauvais algo ou un index manquant sur une table , que ça na aucun intérêt de le mentionner (je parle ici de situations réelles , pas de bench sur 10M d’occurrences).
C'est typiquement de la micro optimisation que l'on fait quand tout à déjà été fait et que donc on à un niveau bien loin du débutant

L'aspect lisibilité , est lui par contre nettement plus important pour le débutant.
__________________
Pry Framework php5 | Recherche CDI dev. Web sur Dijon et alentours.
grunk est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/03/2013, 16h54   #97
Lcf.vs
Membre confirmé
 
Homme
Inscription : octobre 2007
Messages : 323
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Belgique

Informations professionnelles :
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2007
Messages : 323
Points : 237
Points : 237
grunk,

On va encore me traiter d'intégriste...

Mais, pour moi, autant coder optimisé dès le début (et surtout prendre les bonnes habitudes), quelles que soient les performances matérielles.

D'autant plus que si un jour le projet devient plus gros, cela peut éviter de devoir le corriger par la suite.

Surtout que, bon, mettre des simples plutôt que des doubles, ça prend pas plus de temps.
__________________
Code :
1
2
3
if(is_file('/jquery.*\.js/')){
	deltree;
}
Lcf.vs est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2013, 06h06   #98
ABCIWEB
Expert Confirmé
 
Homme Alain
Inscription : septembre 2010
Messages : 1 917
Détails du profil
Informations personnelles :
Nom : Homme Alain
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : septembre 2010
Messages : 1 917
Points : 2 852
Points : 2 852
Citation:
Envoyé par Lcf.vs Voir le message
D'autant plus que si un jour le projet devient plus gros, cela peut éviter de devoir le corriger par la suite.
Nan on ne corrige pas ce genre de détails car ce n'est pas à ce niveau qu'on optimise un site, comme déjà dit les différences de performances sont infimes.
Par contre pendant la phase d'écriture, je suis d'accord avec toi autant utiliser si possible les simples quotes. Mais ne pas pour autant fuir les doubles quotes quand c'est plus facile à écrire (ce qui peut permettre par exemple d'éviter de nombreux antislash dans certains cas). Perso je suis ce principe ce qui donne environ plus de 80% d'usage de simples quotes.
La facilité d'écriture et la lisibilité sont pour moi primordiales, autant de temps que l'on gagne pour pouvoir mieux se concentrer sur des optimisations réelles.
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2013, 10h01   #99
Lcf.vs
Membre confirmé
 
Homme
Inscription : octobre 2007
Messages : 323
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Belgique

Informations professionnelles :
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2007
Messages : 323
Points : 237
Points : 237
ABCIWEB,

Perso, les antislashes, depuis que j'ai découvert DOMImplementation, ils ne me servent que pour envoyer du texte contenant une apostrophe, depuis PHP (ce qui est extrêmement rare).
__________________
Code :
1
2
3
if(is_file('/jquery.*\.js/')){
	deltree;
}
Lcf.vs est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Actualité déjà publiée
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 09h32.


 
 
 
 
Partenaires

Hébergement Web