Autoriser le codage HTML dans un masque de saisie

Utilisateur anonyme - Modifié par Michel2107 le 6/10/2016 à 07:55
jordane45 Messages postés 38219 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 juillet 2024 - 7 oct. 2016 à 00:31
Bonjour,
J'aimerais savoir comment autoriser l'interprétation de code HTML dans un script PHP afin que les balises HTML soit transformées dans un masque de saisie (c'est a dire que lorsque l'on entre <br> par exemple on ait un saut de ligne et pas <br> d'écrit).
Merci
Michel

--

2 réponses

jordane45 Messages postés 38219 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 juillet 2024 344
6 oct. 2016 à 09:28
Bonjour,

Qu'appelles tu un masque de saisie ??
Sachant que si tu n'as pas utilisé de htmlspecialchar ou htmlentities dans ton code...le html sera normalement interprété tout seul.

Ce que j'appelle masque de saisie, c'est l'encadré dans lequel le visiteur écrit (exactement comme l'encadré dans lequel je suis entrain de saisir mon message).
Donc le but c'est de pouvoir coder en html (donc taper <br> dans le masque de saisie par exemple et a la validation du message avoir un saut de ligne)
En fait je reprends un code existant pour faire un réseau social (que je n'ai pas développé) mais le développeur du code n'a pas prévu la possibilité d'autoriser le html .
Bien sur j'aimerai, en tant qu'administrateur du réseau, pourvoir être le seul a coder en html (de façon a éviter les débordements des visiteurs)

--
jordane45 Messages postés 38219 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 juillet 2024 344
6 oct. 2016 à 14:07
.... et .... cet encadré ... il est fait comment ? Via un textarea ?
Et lors de l'affichage.... as tu regardé si il n'y avait pas du htmlentities ou du htmlspecialchar ? (ou éventuellement à l'enregistrement en bdd mais ce n'est pas une bonne méthode...)
Quoi qu'il en soit.. si tu ne nous montres pas le code concerné par ta question... IMPOSSIBLE de te répondre
0
Oui j ai recherché dans le code s'il y avait du htmlentities ou htmlspecialchar. Il n y avait rien.
Voici ce code

<?php

define('__NET_GROUPS__', NET_route()->com . 'NETGroups/');

/* Include group class and library */
require_once(__NET_GROUPS__ . 'classes/NETGroup.php');
require_once(__NET_GROUPS__ . 'libraries/groups.php');
/**


// Initialize Groups Component * * @return void; * @access private //function NET_groups() { //group css NET_extend_view('css/NET.default', 'css/groups'); //group js NET_extend_view('js/opensource.socialnetwork', 'js/groups'); //group pages NET_register_page('group', 'NET_group_page'); NET_register_page('groups', 'NET_groups_page'); NET_group_subpage('members'); NET_group_subpage('edit'); NET_group_subpage('requests'); //group hooks NET_add_hook('group', 'subpage', 'group_members_page'); NET_add_hook('group', 'subpage', 'group_edit_page'); NET_add_hook('group', 'subpage', 'group_requests_page'); NET_add_hook('newsfeed', "left", 'NET_add_groups_to_newfeed'); NET_add_hook('search', 'type:groups', 'groups_search_handler'); NET_add_hook('notification:add', 'comments:post:group:wall', 'NET_notificaiton_groups_comments_hook'); NET_add_hook('notification:add', 'like:post:group:wall', 'NET_notificaiton_groups_comments_hook'); NET_add_hook('notification:view', 'group:joinrequest', 'NET_group_joinrequest_notification'); //group actions if(NET_isLoggedin()) { NET_register_action('group/add', __NET_GROUPS__ . 'actions/group/add.php'); NET_register_action('group/edit', __NET_GROUPS__ . 'actions/group/edit.php'); NET_register_action('group/join', __NET_GROUPS__ . 'actions/group/join.php');NET_register_action('group/delete', __NET_GROUPS__ . 'actions/group/delete.php'); NET_register_action('group/member/approve', __NET_GROUPS__ . 'actions/group/member/request/approve.php'); NET_register_action('group/member/cancel', __NET_GROUPS__ . 'actions/group/member/request/cancel.php'); NET_register_action('group/member/decline', __NET_GROUPS__ . 'actions/group/member/request/decline.php'); NET_register_action('group/cover/upload', __NET_GROUPS__ . 'actions/group/cover/upload.php'); NET_register_action('group/cover/reposition', __NET_GROUPS__ . 'actions/group/cover/reposition.php'); } //callbacks NET_register_callback('page', 'load:group', 'NET_group_load_event'); NET_register_callback('page', 'load:search', 'NET_group_search_link'); NET_register_callback('user', 'delete', 'NET_user_groups_delete'); //group list in newsfeed sidebar mebu $groups_user = NET_get_user_groups(NET_loggedin_user()); if($groups_user) { foreach($groups_user as $group) { $icon = NET_site_url('components/NETGroups/images/group.png'); NET_register_sections_menu('newsfeed', array( 'text' => $group->title, 'url' => NET_group_url($group->guid), 'section' => 'groups', 'icon' => $icon )); unset($icon); } } //add gorup link in sidebar NET_register_sections_menu('newsfeed', array( 'text' => NET_print('add:group'), 'url' => 'javascript:void(0);', 'params' => array( 'id' => 'NET-group-add' ), 'section' => 'groups', 'icon' => NET_site_url('components/NETGroups/images/add.png') )); //my groups link /* NET_register_sections_menu('newsfeed', array( 'text' => 'My Groups', 'url' => 'javascript:void(0);', 'section' => 'groups', 'icon' => NET_site_url('components/NETGroups/images/manages.png') ));*/ }/** * Group search page handler * * @return mixdata; * @access private */function groups_search_handler($hook, $type, $return, $params) { $Pagination = new NETPagination; $groups = new NETGroup; $data = $groups->searchGroups($params['q']); $Pagination->setItem($data); $group['groups'] = $Pagination->getItem(); $search = NET_plugin_view('groups/search/view', $group); $search .= $Pagination->pagination(); if(empty($data)) { return NET_print('NET:search:no:result'); } return $search;}/** * Call event on group load * * @return void; * @access private */function NET_group_load_event($event, $type, $params) { $owner = NET_get_page_owner_guid(); $url = NET_site_url(); NET_register_menu_link('members', 'members', NET_group_url($owner) . 'members', 'groupheader');}/** * Add search group link on search page * * @return void; * @access private */function NET_group_search_link($event, $type, $params) { $url = NETPagination::constructUrlArgs(array( 'type' )); NET_register_menu_link('groups', 'groups', "search?type=groups{$url}", 'search');}/** * Groups page handler * * Pages: * groups/ * groups/add ( ajax ) * @return mixdata; * @access private */function NET_groups_page($pages) { $page = $pages[0]; if(empty($page)) { return false; } switch($page) { case 'add': $params = array( 'action' => NET_site_url() . 'action/group/add', 'component' => 'NETGroups', 'class' => 'NET-form' ); $form = NET_view_form('add', $params, false); echo NET_plugin_view('output/NETbox', array( 'title' => NET_print('add:group'), 'contents' => $form, 'callback' => '#NET-group-submit' )); break; case 'cover': if(isset($pages[1]) && !empty($pages[1])) { $File = new NETFile; $File->file_id = $pages[1]; $File = $File->fetchFile(); $etag = $File->guid . $File->time_created; if(isset($_SERVER['HTTP_IF_NONE_MATCH']) && trim($_SERVER['HTTP_IF_NONE_MATCH']) == "\"$etag\"") { header("HTTP/1.1 304 Not Modified"); exit; } if(isset($File->guid)) { $Cover = NET_get_userdata("object/{$File->owner_guid}/{$File->value}"); $filesize = filesize($Cover); header("Content-type: image/jpeg"); header('Expires: ' . gmdate('D, d M Y H:i:s \G\M\T', strtotime("+6 months")), true); header("Pragma: public"); header("Cache-Control: public"); header("Content-Length: $filesize"); header("ETag: \"$etag\""); readfile($Cover); return; } else { NET_error_page(); } } break; default: echo NET_error_page(); break; }}/** * Group page handler * This page also contain subpages like group/<guid>/members * * Pages: * group/<guid> * group/<guid>/<subpage> * Subpage need to be register seperatly. * * @return mixdata; * @access private */function NET_group_page($pages) { if(empty($pages[0])) { NET_error_page(); } if(!empty($pages[0]) && !empty($pages[0])) { if(isset($pages[1])) { $params['subpage'] = $pages[1]; } else { $params['subpage'] = ''; } if(!NET_is_group_subapge($params['subpage']) && !empty($params['subpage'])) { return false; } $group = NET_get_group_by_guid($pages[0]); if(empty($group->guid)) { NET_error_page(); } NET_set_page_owner_guid($group->guid); NET_trigger_callback('page', 'load:group'); $params['group'] = $group; $title = $group->title; $view = NET_plugin_view('groups/pages/profile', $params); $contents['content'] = NET_group_layout($view); $content = NET_set_page_layout('contents', $contents); echo NET_view_page($title, $content); }}/** * Group member page * * Page: * group/<guid>/member * * @return mixdata; * @access private */function group_members_page($hook, $type, $return, $params) { $page = $params['subpage']; if($page == 'members') { $mod_content = NET_plugin_view('groups/pages/members', $params); $mod = array( 'title' => NET_print('members'), 'content' => $mod_content ); echo NET_set_page_layout('module', $mod); }}/** * Group edit page * * Page: * group/<guid>/edit * * @return mixdata; * @access private */function group_edit_page($hook, $type, $return, $params) { $page = $params['subpage']; $group = NET_get_group_by_guid(NET_get_page_owner_guid()); if($group->owner_guid !== NET_loggedin_user()->guid && !NET_isAdminLoggedin()) { return false; } if($page == 'edit') { $params = array( 'action' => NET_site_url() . 'action/group/edit', 'component' => 'NETGroups', 'class' => 'NET-edit-form', 'params' => array( 'group' => $group ) ); $form = NET_view_form('edit', $params, false); echo NET_set_page_layout('module', array( 'title' => NET_print('edit'), 'content' => $form )); }}/** * Group member requests page * * Page: * group/<guid>/requests * * @return mixdata; * @access private */function group_requests_page($hook, $type, $return, $params) { $page = $params['subpage']; $group = NET_get_group_by_guid(NET_get_page_owner_guid()); if($page == 'requests') { if($group->owner_guid !== NET_loggedin_user()->guid && !NET_isAdminLoggedin()) { redirect("group/{$group->guid}"); } $mod_content = NET_plugin_view('groups/pages/requests', array( 'group' => $group )); $mod = array( 'title' => NET_print('requests'), 'content' => $mod_content ); echo NET_set_page_layout('module', $mod); }}/** * Group delete callback * * @param string $callback Callback name * @param string $type Callback type * @param array Callback data * * @return void; * @access private */function NET_user_groups_delete($callback, $type, $params) { $deleteGroup = new NETGroup; $groups = $deleteGroup->getUserGroups($params['entity']->guid); if($groups) { foreach($groups as $group) { $deleteGroup->deleteGroup($group->guid); } }}/** * Group comments/likes notification hook * * @param string $hook Hook name * @param string $type Hook type * @param array Callback data * * @return array or false; * @access public */function NET_notificaiton_groups_comments_hook($hook, $type, $return, $params) { $object = new NETObject; $object->object_guid = $params['subject_guid']; $object = $object->getObjectById(); if($object) { $params['owner_guid'] = $object->poster_guid; return $params; } return false;}// #186 group join request hookfunction NET_group_joinrequest_notification($name, $type, $return, $params) { $baseurl = NET_site_url(); $user = NET_user_by_guid($params->poster_guid); $user->fullname = "<strong>{$user->fullname}</strong>"; $group = NET_get_group_by_guid($params->subject_guid); $img = "<div class='notification-image'><img src='{$baseurl}avatar/{$user->username}/small' /></div>"; $type = "<div class='NET-groups-notification-icon'></div>"; if($params->viewed !== NULL) { $viewed = ''; } elseif($params->viewed == NULL) { $viewed = 'class="NET-notification-unviewed"'; } // lead directly to groups request page $url = "{$baseurl}group/{$params->subject_guid}/requests"; $notification_read = "{$baseurl}notification/read/{$params->guid}?notification=" . urlencode($url); return "<a href='{$notification_read}' rel="nofollow noopener noreferrer" target="_blank" class='NET-group-notification-item'> <li {$viewed}> {$img} <div class='notfi-meta'> {$type} <div class='data'>" . NET_print("NET:notifications:{$params->type}", array( $user->fullname, $group->title )) . '</div> </div></li>';}NET_register_callback('NET', 'init', 'NET_groups');
0
jordane45 Messages postés 38219 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 juillet 2024 344 > Utilisateur anonyme
7 oct. 2016 à 00:31
Pourrais tu essayer de nous poster le code en faisant des retours à la ligne et en y mettant de l'indentation ? Là c'est illisible....
0
Rejoignez-nous