version 2.8, j'ai du looper une update, vais voir ca dans la matinée, ca pourrait expliquer la difference de version.
la methode buildForm c est la meme que le cours
Merci en tout cas
edit:
update fait, le fichier form.div.layut et comme toi, j'ai plus le readonly en ligne 321, le probleme venait donc de l 'update pas faite de l 'itération6.
Merci Jazz77, je vois aussi que cette solution est expliquée dans le tutoriel symfony en ligne ici, je vais essayer de la mettre en oeuvre, mais je patauge encore un peu ...
Merci Jazz77, je vois aussi que cette solution est expliquée dans le tutoriel symfony en ligne ici, je vais essayer de la mettre en oeuvre, mais je patauge encore un peu ...
Bonjour foxbille,
pour utiliser les sous formulaires n'oublie pas d'implémenter la fonction configureOptions pour que le sous formulaire soit considéré comme un objet et non comme un tableau. En cas d'oublie ca marhe beaucoup moins bien (c'est du vécu :-)
un exemple complet avec silex
Le formulaire
<?php
namespace MyBooks\Form\Type;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use MyBooks\Form\Type\AuthorType;
use Symfony\Component\OptionsResolver\OptionsResolver;
class BookType extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder
->add('title', TextType::class)
->add('author', AuthorType::class)
->add('summary', TextareaType::class)
->add('isbn', TextType::class
);
}
public function configureOptions(OptionsResolver $resolver) {
$resolver->setDefaults(array(
'data_class' => 'MyBooks\Domain\Book'
));
}
public function getName() {
return 'book';
}
}
Le sous formulaire
<?php
namespace MyBooks\Form\Type;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\OptionsResolver\OptionsResolver;
class AuthorType extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder
->add('lastName', TextType::class)
->add('firstName', TextType::class)
;
}
public function configureOptions(OptionsResolver $resolver) {
$resolver->setDefaults(array(
'data_class' => 'MyBooks\Domain\Author'
));
}
public function getName() {
return 'author';
}
}
FrançoisLeprévost, concernant ton problème de disparition de l'article 3
Peut être que l'article 3 n'existe plus (peut être supprimé avec le json ???).... à ta place j'irai voir dans la base de données.
Edité par CorinnePoullette il y a environ 20 heures
Si l'article existe bien. Je ne comprends pas ce qui se passe, j'ai repassé en revue toutes les étapes, j'ai tout à l'identique par rapport au cours mais impossible d'afficher les commentaires.
Je suis actuellement en formation Développeur. Demain j'apporte mon PC au formateur que nous avons cette semaine. Peut-être trouvera-t-il la réponse.
Je ne sais vraiment pas pourquoi tu l'utilse; je pense que tu as dans ton html l'élément strong que tu ne souhaite pas que Twig avec sa sécurité par défaut puis échaper? A ta place moi j'utiliserais row.
Tu peux aussi utiliser le filtre raw tout simplement.
{{ mon.contenu.tinyMCE|raw }}
Sinon, tu peux utiliser CKEditor à la place de TinyMCE, il y a un Bundle qui te permet de le définir dans ton FormType et du coup de ne pas te prendre la tête avec les histoires d'échappement dans ta vue.
Pour le bundle j'avais aussi vu qu'il y en avait pour tinyMCE avec symphony mais rien pour silex.
edit:
Rebonjour,
Vais faire mon boulet mais bon, j'ai vu pour raw, c est impec, par contre si je veux uniquement échaper tout ce qui est "text-align" et pas le reste du css je devrais faire une variable par "text-align" (center, justify...) ?
J'arrive pas a voir comment faire ca pour que ce soit le plus pratique.
Je ne comprends pas bien pourquoi tu veux faire ça car il n'y a rien à échapper dans ce css. Mais pour l'idée tu peux par exemple définir un filtre personnalisé pour Twig.
Petit exemple vite fait et non testé, à adapter à ton cas particulier :
app.php
$app['twig'] = $app->extend('twig', function (Twig_Environment $twig, $app) {
$twig->addExtension(new Twig_Extensions_Extension_Text());
// ...
$twig->addFilter(new Twig_SimpleFilter('text-align', function ($value) {
return preg_replace("#text-align.*;#", htmlspecialchars($0), $value); // ça ne va rien échapper du tout car il n'y a rien à échapper dans cette chaîne mais c'est pour te donner une idée!
}));
return $twig;
});
Dans cet exemple on "échappe" tout texte de type "text-align:blabla;"
Puis dans ta vue tu appelles ton filtre : {{ monTexte|raw|text-align }}
Ca rend ton texte sans échappement à part pour text-align...
Je veux faire ca car je voudrais avoir un apercu des billets sur une page, index par exemple, donc sur la page du billet ya pas de soucis, mais sur la page index ca va me faire:
Titre:
contenu blablablab
Le rendu est pas top, sinon j'avais vu htmlpurifer qui me semblait bien mais la je patauge de trop avec silex :/ , c est penible
J'ai ausi donc suivi l'extrait de cours "Premiers pas avec le framework PHP Silex" et je suis bloqué sur la partie "Simplification de l'Url".
J'ai suivi toutes les instructions comme désigné avant cette partie et tout fonctionnait.
Par contre une fois que je modifie le fichiers hosts, le fichier httpd.conf, le fichier httpd-vhosts.conf, les nouveaux paramètres ne sont pas pris en compte et l'adresse "http://hello-world-silex" ne fonctionne pas.
J'ai suivi certains conseils (notamment sur ce forum et google) et vidéos sur comment modifier les fichiers sités plus hauts mais je n'arrive toujours pas à faire fonctionner.
Après avoir regardé cette vidéo sur comment créer un hote virtuel: https://www.youtube.com/watch?v=Chyive5BmPk&t=901s , j'ai coupé et redémarré MAMP et le serveur apache ne démarré pas avec ce message: "Apache pas pu être démarré. S'il vous plaît vérifier l'installation et la configuration de MAMP."
Celui de MySql démarre correctement.
Cela fait 2 jours que je suis bloqué sur cette partie et je ne peux plus avancer si je ne peux même plus accéder au localhost.
Je vous joint ci dessous un extrait de mes fichiers et erreurs.
Voici les lignes du fichier httpd-vhosts.conf modifié comme indiqué dans le cours:
FrançoisLeprévost, concernant ton problème de disparition de l'article 3
Peut être que l'article 3 n'existe plus (peut être supprimé avec le json ???).... à ta place j'irai voir dans la base de données.
Bonsoir,
J'ai résolu mon problème. J'ai désinstallé wamp. A la place j'utilise xampp et je n'ai plus de souci5si ce n'est un léger problème d'affichage, mais rien de méchant).
Je pense que tu as zappé plusieurs chapitres car l'itération 4 correspond à la modélisation de l'accès au données.
Dans l’activité "application de gestion de livres ", l'architecture du code est de type MVC, il n'y a plus de PDO et la vue se fait en utilisant le moteur de template Twig.
J'ai ausi donc suivi l'extrait de cours "Premiers pas avec le framework PHP Silex" et je suis bloqué sur la partie "Simplification de l'Url".
J'ai suivi toutes les instructions comme désigné avant cette partie et tout fonctionnait.
Par contre une fois que je modifie le fichiers hosts, le fichier httpd.conf, le fichier httpd-vhosts.conf, les nouveaux paramètres ne sont pas pris en compte et l'adresse "http://hello-world-silex" ne fonctionne pas.
J'ai suivi certains conseils (notamment sur ce forum et google) et vidéos sur comment modifier les fichiers sités plus hauts mais je n'arrive toujours pas à faire fonctionner.
Après avoir regardé cette vidéo sur comment créer un hote virtuel: https://www.youtube.com/watch?v=Chyive5BmPk&t=901s , j'ai coupé et redémarré MAMP et le serveur apache ne démarré pas avec ce message: "Apache pas pu être démarré. S'il vous plaît vérifier l'installation et la configuration de MAMP."
Celui de MySql démarre correctement.
Cela fait 2 jours que je suis bloqué sur cette partie et je ne peux plus avancer si je ne peux même plus accéder au localhost.
Je vous joint ci dessous un extrait de mes fichiers et erreurs.
Voici les lignes du fichier httpd-vhosts.conf modifié comme indiqué dans le cours:
Voici la ligne décommenté qui inclus le fichier httpd-vhosts.conf comme indiqué dans le cours:
# Virtual hosts
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
Je vous remercie d'avance pour votre aide
Salut franciscomambo91.
J'ai également eux le même soucis que toi.
J'ai également suivis le cours sur le hello-world-silex, lu les 3/4 des messages de se sujet et ça sans succès... A chaque fois que j'essayé d'accéder à mon lien comme http://microcms j'avais comme résultat le message "Page introuvable...".
Juste avant de casser mon ordi en deux... j'ai changé le port de MAMP en cliquant sur le bouton "port 80.... MySql" comme ci-dessous.
Et comme par magie le lien virtuel c'est mit à fonctionner!!!
Attention tout le même je n'arrive plus à accéder au localhost sauf si je rechange le port.
Bonne continuation et bon courage à vous pour la suite du cours...
J'ai ausi donc suivi l'extrait de cours "Premiers pas avec le framework PHP Silex" et je suis bloqué sur la partie "Simplification de l'Url".
J'ai suivi toutes les instructions comme désigné avant cette partie et tout fonctionnait.
Par contre une fois que je modifie le fichiers hosts, le fichier httpd.conf, le fichier httpd-vhosts.conf, les nouveaux paramètres ne sont pas pris en compte et l'adresse "http://hello-world-silex" ne fonctionne pas.
J'ai suivi certains conseils (notamment sur ce forum et google) et vidéos sur comment modifier les fichiers sités plus hauts mais je n'arrive toujours pas à faire fonctionner.
Après avoir regardé cette vidéo sur comment créer un hote virtuel: https://www.youtube.com/watch?v=Chyive5BmPk&t=901s , j'ai coupé et redémarré MAMP et le serveur apache ne démarré pas avec ce message: "Apache pas pu être démarré. S'il vous plaît vérifier l'installation et la configuration de MAMP."
Celui de MySql démarre correctement.
Cela fait 2 jours que je suis bloqué sur cette partie et je ne peux plus avancer si je ne peux même plus accéder au localhost.
Je vous joint ci dessous un extrait de mes fichiers et erreurs.
Voici les lignes du fichier httpd-vhosts.conf modifié comme indiqué dans le cours:
Voici la ligne décommenté qui inclus le fichier httpd-vhosts.conf comme indiqué dans le cours:
# Virtual hosts
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
Je vous remercie d'avance pour votre aide
Salut franciscomambo91.
J'ai également eux le même soucis que toi.
J'ai également suivis le cours sur le hello-world-silex, lu les 3/4 des messages de se sujet et ça sans succès... A chaque fois que j'essayé d'accéder à mon lien comme http://microcms j'avais comme résultat le message "Page introuvable...".
Juste avant de casser mon ordi en deux... j'ai changé le port de MAMP en cliquant sur le bouton "port 80.... MySql" comme ci-dessous.
Et comme par magie le lien virtuel c'est mit à fonctionner!!!
Attention tout le même je n'arrive plus à accéder au localhost sauf si je rechange le port.
Bonne continuation et bon courage à vous pour la suite du cours...
Salut,
La solution que vous avez utilisé je l'avais vu sur d'autres forums du net (notamment en anglais) mais c'est rare d'avoir la même technique pour solutionner un problème presque identique.. breff bonne continuation vous aussi
J'ai réussi à changer l'hôte comme indiqué dans le cours cependant quand je teste l'adresse http://microcms au lieu d'avoir la page microcms avec les données de la base de données du cours, j'ai plutôt une page blanche avec le message "It Works !".
Si quelqu'un a déjà rencontré ce même problème son expérience serait la bienvenue :).
Je fais l'activité 2, PHP évoluer vers une architecture professionnelle…
Bonjour, avant de devenir complètement dingue, je me permets de vous demander votre aide.
Mon travail semble fonctionner parfaitement mais lorsque je lance vendor/bin/phpunit.bat, voici l'erreur que j'obtiens…
Merci.
Mon problème est résolu ! Comme le dit le proverbe chinois : « si tu veux que ta variable soit reconnue à l'extérieur d'une restriction, déclare la à l'extérieur de cette même restriction ! »
J'ai crée une classe Image, puis les requetes dans ImageDAO, dans l adminController j ai cree une action ajout d image avec bien la variable $imageForm, je sais pas trop quoi envoyer comme code parceque je suis bien perdu
Cours Architecture PHP professionnelle / Questions
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Ciscoo91
Ciscoo91
Ciscoo91
Ciscoo91