elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


  Mostrar Temas
Páginas: [1]
1  Programación / Desarrollo Web / Cargar Checkbox desde javascript ayudaaaaa! en: 24 Octubre 2016, 06:05 am
Hola amigos como están, espero que bien, les cuento que estoy construyendo un programita donde quiero controlar los roles de los usuarios registrados en mi sitio.  Para eso, hice un formulario llamado “roles” que contiene un select(donde obtengo el id del usuario que en este caso es el “rut”) y varios ckeckbox que tienen el mismo nombre “checkbox[]” pero cada uno tiene un “id” y un “value diferente”, todo esto está  en un archivo llamado “roles.php”

Código
  1. <form method="post" enctype="multipart/form-data" name="Roles" id="Roles">    
  2.            <div class="form-group">
  3.            <label class="control-label" >Usuario: </label>
  4.  
  5.            <select class="form-control" id="usuario" name="usuario">
  6. <option value="0">Seleccione un Usuario...</option>
  7.                <?php
  8.                    $usuarios = $prin->obtener_usuarios();
  9.                    while($usu = pg_fetch_array($usuarios)){
  10.                        echo '<option value="'.$usu['rut'].'">'.$usu['apellidos'].' '.$usu['nombres'].'</option>';
  11.                    }
  12.                    ?>
  13. </select>
  14.  
  15. </div>
  16.            <div class="table-responsive">
  17.           <table class="table table-striped">
  18.                <thead>
  19.                <tr>
  20.                <td><strong>Interfaz</strong></td><td align="center"><strong>Crear</strong></td><td align="center"><strong>Editar</strong></td><td align="center"><strong>Eliminar</strong></td>
  21.                </tr>
  22.                </thead>
  23.                <tbody>
  24.                <tr class="success">
  25.                <td><strong>3.- Seguridad</strong></td><td></td><td></td><td></td>
  26.                </tr>
  27.                <tr>
  28.                <td>Usuarios</td>
  29.                <td align="center"><input type="checkbox" name="checkbox[]" id="crear_usuarios" value="crear_usuarios" /></td>
  30.                <td align="center"><input type="checkbox" name="checkbox[]" id="editar_usuarios" value="editar_usuarios" /></td>
  31.                <td align="center"><input type="checkbox" name="checkbox[]" id="eliminar_usuarios" value="eliminar_usuarios" /></td>
  32.                </tr>
  33.                <tr>
  34.                <td>Roles</td>
  35.                <td align="center"><input type="checkbox" name="checkbox[]" id="crear_modulos" value="crear_modulos" /></td>
  36.                <td align="center"><input type="checkbox" name="checkbox[]" id="editar_modulos" value="editar_modulos" /></td>
  37.                <td align="center"><input type="checkbox" name="checkbox[]" id="eliminar_usuarios" value="eliminar_usuarios" /></td>
  38.                </tr>
  39.                <tr>
  40.                <td>Perfiles</td>
  41.                <td align="center"><input type="checkbox" name="checkbox[]" id="crear_perfiles" value="crear_perfiles" /></td>
  42.                <td align="center"><input type="checkbox" name="checkbox[]" id="editar_perfiles" value="editar_perfiles" /></td>
  43.                <td align="center"><input type="checkbox" name="checkbox[]" id="eliminar_usuarios" value="eliminar_usuarios" /></td>
  44.                </tr>
  45.                <tr class="success">
  46.                <td><strong>4.- Panel de Control</strong></td><td></td><td></td><td></td>
  47.                </tr>
  48.                <tr>
  49.                <tr>
  50.                <td>Unidades o Departamentos</td>
  51.                <td align="center"><input type="checkbox" name="checkbox[]" id="crear_unidades" value="crear_unidades" /></td>
  52.                <td align="center"><input type="checkbox" name="checkbox[]" id="editar_unidades" value="editar_unidades" /></td>
  53.                <td align="center"><input type="checkbox" name="checkbox[]" id="eliminar_unidades" value="eliminar_unidades" /></td>
  54.                </tr>
  55.           </tbody>
  56.           </table>
  57.            </div>
  58.            </form>
  59.  
  60.  
  61. Bien, entonces en un archivo de javascript llamo al evento “onChange” de este select, donde envío a una página llamada “controlador_roles.php” el rut del usuario seleccionado, esta página me devuelve como respuesta en un arreglo con todos los roles del usuario seleccionado. A continuación les presento la función.
  62.  
  63. $('select#usuario').on('change', function(){
  64. var rut_usuario = $(this).val();
  65. var url = '../controlador/controlador_roles.php';
  66. $.ajax({
  67. type:'POST',
  68. url:url,
  69. data:'rut_usuario='+rut_usuario,
  70. success: function(res){  // recibo todos los roles del usuario seleccionado.
  71.   var datos = eval(res);
  72.      for (i=0;i<datos.length;i++) //recorro la cantidad de roles que tiene el usuario
  73.                    {
  74.      document.getElementById(datos[i]).checked == true;
  75.     }
  76.    });
  77. return false;
  78. });
  79.  
  80.  
Entonces mi consulta es la siguiente.

Es posible que al momento de activarse la función “onchange” cambie el estado de los checkcbox a “checked” y marque los roles del usuario seleccionado?  He intentado realizar esta acción pero no lo he conseguido, creo que la forma mas idónea de hacerlo es con un for pero no se como estructurar el bucle para que me marque los checkbox. Espero que puedan ayudarme quedo atento a sus comentarios, gracias de antemano.





Mod: Los códigos deben ir en etiquetas GeSHi... segundo aviso
2  Programación / PHP / filtrar datos de un jtable en php en: 16 Marzo 2015, 02:10 am
Hola foreros espero que se encuentren bien, tengo una duda y espero que ustedes me puedan ayudar. estoy creando un sistema web para un colegio en el que trabajo y resulta que estoy ocupando jtable. todo resulta bien el problema es que no puedo filtrar los datos de una tabla ya que solo existe esto para el lenguaje java y asp.net , como podria hacerlo para crear el filtro en php.

tengo un archivo php llamado funcionarios.php que contiene lo siguiente

Código
  1. <html>
  2.  <head>
  3.  
  4.    <link href="../themes/redmond/jquery-ui-1.8.16.custom.css" rel="stylesheet" type="text/css" />
  5. <link href="../scripts/jtable/themes/metro/blue/jtable.css" rel="stylesheet" type="text/css" />
  6.  
  7. <script src="../scripts/jquery-1.6.4.min.js" type="text/javascript"></script>
  8.    <script src="../scripts/jquery-ui-1.8.16.custom.min.js" type="text/javascript"></script>
  9.    <script src="../scripts/jtable/jquery.jtable.js" type="text/javascript"></script>
  10.  
  11.    <!-- Import CSS file for validation engine (in Head section of HTML) -->
  12. <link href="../css/validationEngine.jquery.css" rel="stylesheet" type="text/css" />
  13.  
  14. <!-- Import javascript files for validation engine (in Head section of HTML) -->
  15. <script type="text/javascript" src="../js/jquery.validationEngine.js"></script>
  16. <script type="text/javascript" src="../js/jquery.validationEngine-es.js"></script>
  17.  
  18. </head>
  19.  
  20.  <body>
  21. <div id="PeopleTableContainer" style="width:auto;"></div>
  22.  
  23. <script type="text/javascript">
  24.  
  25. $(document).ready(function () {
  26.  
  27.  
  28.  
  29.    //Prepare jTable
  30. $('#PeopleTableContainer').jtable({
  31. title: 'Tabla de Funcionarios',
  32. paging: true,
  33. pageSize: 14,
  34. sorting: true,
  35. defaultSorting: 'nombres ASC',
  36. actions: {
  37. listAction: 'accionFuncionarios.php?action=list',
  38. createAction: 'accionFuncionarios.php?action=create',
  39. updateAction: 'accionFuncionarios.php?action=update',
  40. deleteAction: 'accionFuncionarios.php?action=delete'
  41. },
  42. fields: {
  43. rut: {
  44. title: 'Rut',
  45. key: true,
  46. edit: true,
  47. list: true,
  48. width: '15%',
  49. inputClass: 'validate[required]'
  50. },
  51. nombres: {
  52. title: 'Nombres',
  53. width: '15%',
  54. inputClass: 'validate[required]'
  55. },
  56. apellidos: {
  57. title: 'Apellidos',
  58. width: '15%',
  59. inputClass: 'validate[required]'
  60. },
  61. correo: {
  62. title: 'Correo',
  63. width: '17%',
  64. inputClass: 'validate[custom[email]]'
  65. },
  66. telefono : {
  67. title: 'Teléfono',
  68. width: '15%',
  69. inputClass: 'validate[required,custom[phone]]'
  70. },
  71. estado: {
  72.                     title: 'Estado',
  73.                     width: '10%',
  74.                     type: 'checkbox',
  75. setOnTextClick: false,
  76.                     values: { 'false': 'Inactivo', 'true': 'Vigente' },
  77.                     defaultValue: 'true'
  78.  
  79. }
  80. },
  81.            //Initialize validation logic when a form is created
  82.            formCreated: function (event, data) {
  83.                data.form.validationEngine();
  84.            },
  85.            //Validate form when it is being submitted
  86.            formSubmitting: function (event, data) {
  87.                return data.form.validationEngine('validate');
  88.            }
  89. });
  90.  
  91. //Load person list from server
  92. $('#PeopleTableContainer').jtable('load');
  93. //jQuery("#jtable-create-form").validationEngine();
  94. });
  95.  
  96. </script>
  97.  
  98.  </body>
  99. </html>
  100.  
  101.  
  102. y el codigo php que lo recibe y que inteactua con la base de datos lo llame accionFuncionarios.php y contiene lo siguiente.
  103.  
  104. <?php
  105.  
  106. try
  107. {
  108. //Open database connection
  109. $con = mysql_connect("localhost","root","");
  110. mysql_select_db("laboratorios", $con);
  111. mysql_query ("SET NAMES 'utf8'");
  112.  
  113. //Getting records (listAction)
  114. if($_GET["action"] == "list")
  115. {
  116. //Get record count
  117. $result = mysql_query("SELECT COUNT(*) AS RecordCount FROM funcionario;");
  118. $row = mysql_fetch_array($result);
  119. $recordCount = $row['RecordCount'];
  120.  
  121. //Get records from database
  122. $result = mysql_query("SELECT * FROM funcionario ORDER BY " . $_GET["jtSorting"] . " LIMIT " . $_GET["jtStartIndex"] . "," . $_GET["jtPageSize"] . ";");
  123.  
  124. //Add all records to an array
  125. $rows = array();
  126. while($row = mysql_fetch_array($result))
  127. {
  128.    $rows[] = $row;
  129. }
  130.  
  131. //Return result to jTable
  132. $jTableResult = array();
  133. $jTableResult['Result'] = "OK";
  134. $jTableResult['TotalRecordCount'] = $recordCount;
  135. $jTableResult['Records'] = $rows;
  136. print json_encode($jTableResult);
  137. }
  138. //Creating a new record (createAction)
  139. else if($_GET["action"] == "create")
  140. {
  141. //Insert record into database
  142. $result = mysql_query("INSERT INTO funcionario(rut, nombres, apellidos, correo, telefono, estado) VALUES('" . $_POST["rut"] . "', '".$_POST["nombres"]. "', '".$_POST["apellidos"]. "', '".$_POST["correo"]. "', '".$_POST["telefono"]. "' , '".$_POST["estado"]."');");
  143.  
  144. //Get last inserted record (to return to jTable)
  145. $result = mysql_query("SELECT * FROM funcionario WHERE rut = '".$_POST["rut"]."';");
  146. $row = mysql_fetch_array($result);
  147.  
  148. //Return result to jTable
  149. $jTableResult = array();
  150. $jTableResult['Result'] = "OK";
  151. $jTableResult['Record'] = $row;
  152. print json_encode($jTableResult);
  153. }
  154. //Updating a record (updateAction)
  155. else if($_GET["action"] == "update")
  156. {
  157. //Update record in database
  158. $result = mysql_query("UPDATE funcionario SET rut = '" . $_POST["rut"] . "', nombres = '" . $_POST["nombres"] . "', apellidos = '" . $_POST["apellidos"] . "', correo = '" . $_POST["correo"] . "', telefono = '" . $_POST["telefono"] . "', estado = '" . $_POST["estado"] . "' WHERE rut = '" . $_POST["rut"] . "';");
  159.  
  160. //Return result to jTable
  161. $jTableResult = array();
  162. $jTableResult['Result'] = "OK";
  163. print json_encode($jTableResult);
  164. }
  165. //Deleting a record (deleteAction)
  166. else if($_GET["action"] == "delete")
  167. {
  168. //Delete from database
  169. $result = mysql_query("DELETE FROM funcionario WHERE rut = '" . $_POST["rut"] . "';");
  170.  
  171. //Return result to jTable
  172. $jTableResult = array();
  173. $jTableResult['Result'] = "OK";
  174. print json_encode($jTableResult);
  175. }
  176.  
  177. //Close database connection
  178. mysql_close($con);
  179.  
  180. }
  181. catch(Exception $ex)
  182. {
  183.    //Return error message
  184. $jTableResult = array();
  185. $jTableResult['Result'] = "ERROR";
  186. $jTableResult['Message'] = $ex->getMessage();
  187. print json_encode($jTableResult);
  188. }
  189.  
  190. ?>
  191.  
esperando haber entregado la información necesaria para poder obtener ayuda de antemano les agradezco, estaré atento a sus comentarios.

Mod: Obligatorio el uso de etiquetas GeSHi.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines