Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/04/2012, 11:59
Avatar de Fleon
Fleon
 
Fecha de Ingreso: febrero-2010
Mensajes: 138
Antigüedad: 14 años, 3 meses
Puntos: 3
Validacion funciona pero igual pasa con errores

Holas a todos, tengo un sencillissimo script de validacion en JavaScript:

Código Javascript:
Ver original
  1. function validar() {
  2.             if (document.save_cliente.cliente_nombre.value.length == 0) {
  3.                 alert("Debes Ingresar el nombre del Cliente!")
  4.                 document.save_cliente.cliente_nombre.focus()
  5.                 return 0;
  6.             }
  7.         }

Ese script funciona bien, pero aun tener el campo vacio me guarda los datos en PHP, o sea, no evita que pase la moificacion, este es el script de guardar:

Código PHP:
Ver original
  1. elseif (isset($_REQUEST['do']) && $_REQUEST['do'] == 'save') {     
  2.             $smcFunc['db_query']('', '
  3.                 UPDATE {db_prefix}da_anuncios_clientes
  4.                 SET cliente_nombre = {string:name}, cliente_link = {string:link}, activo = {int:active}
  5.                 WHERE id = {int:cliente_id}',
  6.                 array(
  7.                     'cliente_id' => $_POST['cliid'],
  8.                     'name' => $_POST['cliente_nombre'],
  9.                     'link' => $_POST['cliente_url'],
  10.                     'active' => $_POST['cliente_activo'],
  11.                 )
  12.             );
  13.            
  14.             redirectexit('action=admin;area=manageanuncios;sa=clientes');  
  15.        }

Este es el formulario:

Código PHP:
Ver original
  1. echo '
  2.     <div id="manage_boards">
  3.         <form action="', $scripturl, '?action=admin;area=manageanuncios;sa=editcliente;do=save" name="save_cliente" method="post" accept-charset="', $context['character_set'], '" onSubmit="javascript:return validar()">
  4.            
  5.             <div class="cat_bar">
  6.                 <h3 class="catbg">
  7.                     ', isset($_GET['s']) ? $txt['manage_anuncios_edit_cliente'] : $txt['manage_anuncios_add_cliente'], '
  8.                 </h3>
  9.             </div>';
  10.            
  11.         foreach ($context['clientes'] as $cliente) {
  12.            
  13.         echo'
  14.         <input type="hidden" name="cliid" value="', $cliente['cliente']['id'], '" />
  15.         <div class="windowbg">
  16.                 <span class="topslice"><span></span></span>
  17.                 <div class="content">
  18.                     <dl class="settings">
  19.  
  20.                         <dt>
  21.                             <strong>', $txt['manage_anuncios_cliente_nombre'], ':</strong>
  22.  
  23.                         </dt>
  24.                         <dd>
  25.                             <input type="text" name="cliente_nombre" id="cliente_nombre" value="', $cliente['cliente']['name'], '" size="30" class="input_text" />
  26.                         </dd>
  27.  
  28.                         <dt>
  29.                             <strong>', $txt['manage_anuncios_cliente_url'], ':</strong>
  30.                         </dt>
  31.                         <dd>
  32.                             <input type="text" name="cliente_url" value="', $cliente['cliente']['url'], '" size="30" class="input_text" />
  33.                         </dd>
  34.                        
  35.                         <dt>
  36.                             <strong>', $txt['manage_anuncios_cliente_activo'], ':</strong><br />
  37.                         </dt>
  38.                         <dd>';
  39.                         if ($cliente['cliente']['active'] == 1)
  40.                             $checked = 'checked="checked" value="'. $cliente['cliente']['active']. '"';
  41.                         else
  42.                             $checked = 'value="0"';
  43.                            
  44.                             echo '<input type="checkbox" name="cliente_activo" ' . $checked . ' id="cliente_activo" />
  45.                         </dd>
  46.  
  47.                     </dl>';
  48.         }
  49.        
  50.         if (!isset($_GET['s']))
  51.             echo' <input type="submit" name="add" value="', $txt['manage_anuncios_cliente_save'], '" class="button_submit" />';
  52.         else
  53.             echo '<input type="submit" name="edit" value="', $txt['manage_anuncios_cliente_modify'], '" class="button_submit" />';
  54.  
  55.  
  56.     echo'   </div>
  57.             <span class="botslice"><span></span></span>
  58.         </div>
  59.         </form>
  60.     </div>
  61.     <script type="text/javascript"><!-- // --><![CDATA[
  62.         function validar() {
  63.             if (document.save_cliente.cliente_nombre.value.length == 0) {
  64.                 alert("Debes Ingresar el nombre del Cliente!")
  65.                 document.save_cliente.cliente_nombre.focus()
  66.                 return 0;
  67.             }
  68.         }
  69.     // ]]></script>';

Asi que no se que podria estar pasando aqui.

Fleon xD