Foros del Web » Programando para Internet » PHP »

Ayuda con un Codigo

Estas en el tema de Ayuda con un Codigo en el foro de PHP en Foros del Web. Hola no soy experto en php pero ahí leyendo y probando he estado haciendo varias cosas ahora estoy haciendo un código para que de un ...
  #1 (permalink)  
Antiguo 02/09/2008, 23:42
Avatar de 001dsap001  
Fecha de Ingreso: enero-2008
Ubicación: Venezuela
Mensajes: 56
Antigüedad: 16 años, 3 meses
Puntos: 1
Exclamación Ayuda con un Codigo

Hola no soy experto en php pero ahí leyendo y probando he estado haciendo varias cosas ahora estoy haciendo un código para que de un grupo de personas se seleccionen las que necesite y de esas seleccionadas se seleccione un jefe y luego se le asignen actividades luego me debe mostrar en una tabla todo lo que seleccione para confirmar y agregarlo todo en una Base de Datos

ya tengo el casi todo el código hecho se los anexo, el problema es que no me salen las personas seleccionadas al final del código me cuesta full la parte de los checks ya no se que cambiarle para que apresan!

Quien me ayuda con esto se que no es sencillo al menos para mi y si se puede mejorar este código acepto sugerencias!!!


Código PHP:
<?php
$conect 
mysql_connect('localhost''BASE''CLAVE');if (!$conect) { die('Ha fallado la conexi&oacute;n: ' mysql_error());
}
$bd_miembros mysql_select_db('BASE_miembros'$conect);if (!$bd_miembros) { die ('Ha fallado la conexi&oacute;n: ' mysql_error());
}
$miembros_o mysql_query("SELECT * FROM miembros WHERE Status = 'Operativo'");if (!$miembros_o) { die('Invalid query: ' mysql_error());
}

$Seleccionado$_POST["Operativos"];


echo 
'<table width="100%" border="0" cellpadding="0" cellspacing="0" id="GestorGuardias">';
  if (!isset(
$_POST['SFecha'])){
  if (!isset(
$_POST['SOperativos'])){
  if (!isset(
$_POST['SJefe'])){
  if (!isset(
$_POST['SActividades'])){
  echo 
'<tr> 
    <td><form name="fecha" method="post" action="aguardias.php">
        <table border="0" align="center" cellpadding="0" cellspacing="0" id="Fecha">
          <tr> 
            <td>Dia: &nbsp;</td>
            <td><select name="dd" id="dd">'
;
            for (
$dia=1$dia<=31$dia++){
             echo 
'<option value="'.$dia.'">'.$dia.'</option>';
             }
              echo 
'</select></td>
            <td>Mes:&nbsp;</td>
            <td><select name="mm" id="mm">
                <option value="Enero">Enero</option>
                <option value="Febrero">Febrero</option>
                <option value="Marzo">Marzo</option>
                <option value="Abril">Abril</option>
                <option value="Mayo">Mayo</option>
                <option value="Junio">Junio</option>
                <option value="Julio">Julio</option>
                <option value="Agosto">Agosto</option>
                <option value="Septiembre">Septiembre</option>
                <option value="Octubre">Octubre</option>
                <option value="Noviembre">Noviembre</option>
                <option value="Diciembre">Diciembre</option>
              </select></td>
            <td>A&ntilde;o:&nbsp;</td>
            <td><select name="aa" id="aa">'
;
            for (
$ano=2008$ano<=2009$ano++){
             echo 
'<option value="'.$ano.'">'.$ano.'</option>';
             }
              echo 
'</select></td>
            <td><input name="SFecha" type="submit" value="Agregar"></td>
          </tr>
        </table>
      </form></td>
  </tr>'
;}}}}
  
  if (isset(
$_POST['SFecha'])){
  
$dd $_POST["dd"];
$mm $_POST["mm"];
$aa $_POST["aa"];
$Fecha $dd.' de '.$mm.' del '.$aa;
  echo 
'<tr> 
    <td><form action="aguardias.php" method="post" name="Operativos">
        <table border="0" align="center" cellpadding="0" cellspacing="0" id="Operativos">
          <tr> 
            <td colspan="2">Personal Operativo</td>
          </tr>'
;
                    while (
$Moper mysql_fetch_array($miembros_o)){
          echo 
'
          <tr> 
            <td>'
.$Moper['Nombre'].' '.$Moper['S_Nombre'].' '.$Moper['Apellido'].' '.$Moper['S_Apellido'].'</td>
            <td><input name="Operativos[]" type="checkbox" value="'
.$Moper['Miembro'].'"></td>
          </tr>
          <tr>'
;}
          echo 
' <input name="Fecha" type="hidden" value="'.$Fecha.'">
            <td colspan="2" align="center"> <input name="SOperativos" type="submit" id="Operativos" value="Aceptar"></td>
          </tr>
        </table>
      </form></td>
  </tr>'
;}
  
  if (isset(
$_POST['SOperativos'])){
  echo 
'<tr> 
    <td><form action="aguardias.php" method="post" name="Jefe">
        <table  border="0" align="center" cellpadding="0" cellspacing="0" id="Jefe">
          <tr> 
            <td colspan="2">Jefe de Guardia</td>
          </tr>'
;          
for(
$i=0;$i<count($Seleccionado);$i++){
$Sel mysql_query("SELECT * FROM miembros WHERE Miembro = '".$Seleccionado[$i]."'"$conect); 
echo 
'<tr><td><input type="radio" name="Jefe" value="'.$Seleccionado[$i].'"></td><td>'.mysql_result($Sel0"Nombre").' '.mysql_result($Sel0"S_Nombre").' '.mysql_result($Sel0"Apellido").'</td><td>'.mysql_result($Sel0"S_Apellido").'</td><tr>';
}
echo 
'<tr> 
            <td colspan="2" align="center"> <input name="SJefe" type="submit" id="SJefe" value="Aceptar"></td>
          </tr>
        </table>
        <input name="Fecha" type="hidden" value="'
.$_POST["Fecha"].'">
      </form></td>
  </tr>'
;}
  
  
  if (isset(
$_POST['SJefe'])){
  echo 
'<tr>
    <td>
    <script language="javascript" type="text/javascript" src="tinymce/tiny_mce.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
    mode : "textareas",
    theme : "advanced",
    theme_advanced_buttons1 : "bold,italic,underline,separator,strikethrough,justifyleft,justifycenter,justifyright, justifyfull,bullist,numlist,undo,redo,link,unlink",
    theme_advanced_buttons2 : "",
    theme_advanced_buttons3 : "",
    theme_advanced_toolbar_location : "top",
    theme_advanced_toolbar_align : "left",
    extended_valid_elements : "a[name|href|target|title|onclick],img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name],hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]"
});
</script>
    <form name="Actividades" method="post" action="aguardias.php">
        <table border="0" align="center" cellpadding="0" cellspacing="0" id="Actividades">
          <tr> 
            <td align="center">Actividades</td>
          </tr>
          <tr> 
            <td><textarea name="Actividades"></textarea></td>
          </tr>
          <tr>
            <td align="center">
<input name="SActividades" type="submit" id="SActividades" value="Agregar"></td>
          </tr>
        </table>
        <input name="Fecha" type="hidden" value="'
.$_POST["Fecha"].'">
        <input name="Jefe" type="hidden" value="'
.$_POST["Jefe"].'">
      </form></td>
  </tr>
</table>
'
;}

if (isset(
$_POST['SActividades'])){
$Fecha $_POST["Fecha"];
$Jefe $_POST["Jefe"];
$Actividades $_POST["Actividades"];
echo 
'
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr> 
    <td colspan="2" align="center">'
.$Fecha.'</td>
  </tr>
  <tr>'
;
for(
$i=0;$i<count($Seleccionado);$i++){
$Sel mysql_query("SELECT * FROM miembros WHERE Miembro = '".$Seleccionado[$i]."'"$conect); 
echo 
'<td align="center">'.mysql_result($Sel0"Nombre").' '.mysql_result($Sel0"S_Nombre").' '.mysql_result($Sel0"Apellido").'</td><td align="center">'.mysql_result($Sel0"S_Apellido").'</td><tr><td align="center">'
if (
$_POST["Jefe"]==$Seleccionado[$i]){echo '(JF)';}
echo 
'</td>';
}
echo 
'<tr> 
    <td colspan="2" align="center">'
.$Actividades.'</td>
  </tr>
</table>'
;}
?>

Última edición por 001dsap001; 03/09/2008 a las 01:13 Razón: Faltaba un ; y un .php
  #2 (permalink)  
Antiguo 03/09/2008, 00:43
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Ayuda con un Codigo

No lei TODO tu codigo (Es muy largo xD)

Pero para recoger los valores de los checkboxes seleccionados haz un bucle foreach:

Código PHP:
echo 'Miembros seleccionados:<br>';
foreach(
$_POST['Operativos'] as $miembro) {
echo 
$miembro.'<br>';

Por cierto, tienes un error de sintaxis en la linea 77. Te falta un ";" (Punto y coma).
  #3 (permalink)  
Antiguo 03/09/2008, 01:28
Avatar de 001dsap001  
Fecha de Ingreso: enero-2008
Ubicación: Venezuela
Mensajes: 56
Antigüedad: 16 años, 3 meses
Puntos: 1
Busqueda Respuesta: Ayuda con un Codigo

Hola Ronruby si es algo largo creeme que he intentado hacerlo por partes para no tener errores y an asi.. :S, bueno ya corregi los errores de sytaxis que vi por encmita fue mala mia al copiarlos en el foro asi y mas siendo tan largo el codigo..

agregue lo que me dijistes y ahorra un par de lineas, funciona bien en la primera parte donde agarro los checkbox por primera vez, pero cuanod quiero que me los muestre de nuevo al final me arroja

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 4 in la linea "Te la Marque con el un comment" esta casi al final.

Gracias sigo sin dar con la solución

Código PHP:
<?php
$conect 
mysql_connect('localhost''BASE''CLAVE');if (!$conect) { die('Ha fallado la conexi&oacute;n: ' mysql_error());
}
$bd_miembros mysql_select_db('BASE_miembros'$conect);if (!$bd_miembros) { die ('Ha fallado la conexi&oacute;n: ' mysql_error());
}
$miembros_o mysql_query("SELECT * FROM miembros WHERE Status = 'Operativo'");if (!$miembros_o) { die('Invalid query: ' mysql_error());
}

echo 
'<table width="100%" border="0" cellpadding="0" cellspacing="0" id="GestorGuardias">';
  if (!isset(
$_POST['SFecha'])){
  if (!isset(
$_POST['SOperativos'])){
  if (!isset(
$_POST['SJefe'])){
  if (!isset(
$_POST['SActividades'])){
  echo 
'<tr> 
    <td><form name="fecha" method="post" action="aguardias.php">
        <table border="0" align="center" cellpadding="0" cellspacing="0" id="Fecha">
          <tr> 
            <td>Dia: &nbsp;</td>
            <td><select name="dd" id="dd">'
;
            for (
$dia=1$dia<=31$dia++){
             echo 
'<option value="'.$dia.'">'.$dia.'</option>';
             }
              echo 
'</select></td>
            <td>Mes:&nbsp;</td>
            <td><select name="mm" id="mm">
                <option value="Enero">Enero</option>
                <option value="Febrero">Febrero</option>
                <option value="Marzo">Marzo</option>
                <option value="Abril">Abril</option>
                <option value="Mayo">Mayo</option>
                <option value="Junio">Junio</option>
                <option value="Julio">Julio</option>
                <option value="Agosto">Agosto</option>
                <option value="Septiembre">Septiembre</option>
                <option value="Octubre">Octubre</option>
                <option value="Noviembre">Noviembre</option>
                <option value="Diciembre">Diciembre</option>
              </select></td>
            <td>A&ntilde;o:&nbsp;</td>
            <td><select name="aa" id="aa">'
;
            for (
$ano=2008$ano<=2009$ano++){
             echo 
'<option value="'.$ano.'">'.$ano.'</option>';
             }
              echo 
'</select></td>
            <td><input name="SFecha" type="submit" value="Agregar"></td>
          </tr>
        </table>
      </form></td>
  </tr>'
;}}}}
  
  if (isset(
$_POST['SFecha'])){
  
$dd $_POST["dd"];
$mm $_POST["mm"];
$aa $_POST["aa"];
$Fecha $dd.' de '.$mm.' del '.$aa;
  echo 
'<tr> 
    <td><form action="aguardias.php" method="post" name="Operativos">
        <table border="0" align="center" cellpadding="0" cellspacing="0" id="Operativos">
          <tr> 
            <td colspan="2">Personal Operativo</td>
          </tr>'
;
                    while (
$Moper mysql_fetch_array($miembros_o)){
          echo 
'
          <tr> 
            <td>'
.$Moper['Nombre'].' '.$Moper['S_Nombre'].' '.$Moper['Apellido'].' '.$Moper['S_Apellido'].'</td>
            <td><input name="Operativos[]" type="checkbox" value="'
.$Moper['Miembro'].'"></td>
          </tr>
          <tr>'
;}
          echo 
' <input name="Fecha" type="hidden" value="'.$Fecha.'">
            <td colspan="2" align="center"> <input name="SOperativos" type="submit" id="Operativos" value="Aceptar"></td>
          </tr>
        </table>
      </form></td>
  </tr>'
;}
  
  if (isset(
$_POST['SOperativos'])){
  echo 
'<tr> 
    <td><form action="aguardias.php" method="post" name="Jefe">
        <table  border="0" align="center" cellpadding="0" cellspacing="0" id="Jefe">
          <tr> 
            <td colspan="2">Jefe de Guardia</td>
          </tr>'
;          
foreach(
$_POST['Operativos'] as $Seleccionado) {
$Sel mysql_query("SELECT * FROM miembros WHERE Miembro = '".$Seleccionado."'"$conect); 
echo 
'<tr><td><input type="radio" name="Jefe" value="'.$Seleccionado.'"></td><td>'.mysql_result($Sel0"Nombre").' '.mysql_result($Sel0"S_Nombre").' '.mysql_result($Sel0"Apellido").'</td><td>'.mysql_result($Sel0"S_Apellido").'</td><tr>';
}
echo 
'<tr> 
            <td colspan="2" align="center"> <input name="SJefe" type="submit" id="SJefe" value="Aceptar"></td>
          </tr>
        </table>
        <input name="Fecha" type="hidden" value="'
.$_POST["Fecha"].'">
        <input name="Seleccionado[]" type="hidden" value="'
.$_POST['Operativos'].'">
      </form></td>
  </tr>'
;}
  
  
  if (isset(
$_POST['SJefe'])){
  echo 
'<tr>
    <td>
    <script language="javascript" type="text/javascript" src="tinymce/tiny_mce.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
    mode : "textareas",
    theme : "advanced",
    theme_advanced_buttons1 : "bold,italic,underline,separator,strikethrough,justifyleft,justifycenter,justifyright, justifyfull,bullist,numlist,undo,redo,link,unlink",
    theme_advanced_buttons2 : "",
    theme_advanced_buttons3 : "",
    theme_advanced_toolbar_location : "top",
    theme_advanced_toolbar_align : "left",
    extended_valid_elements : "a[name|href|target|title|onclick],img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name],hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]"
});
</script>
    <form name="Actividades" method="post" action="aguardias.php">
        <table border="0" align="center" cellpadding="0" cellspacing="0" id="Actividades">
          <tr> 
            <td align="center">Actividades</td>
          </tr>
          <tr> 
            <td><textarea name="Actividades"></textarea></td>
          </tr>
          <tr>
            <td align="center">
<input name="SActividades" type="submit" id="SActividades" value="Agregar"></td>
          </tr>
        </table>
        <input name="Fecha" type="hidden" value="'
.$_POST["Fecha"].'">
        <input name="Seleccionado[]" type="hidden" value="'
.$_POST['Operativos'].'">
        <input name="Jefe" type="hidden" value="'
.$_POST["Jefe"].'">
      </form></td>
  </tr>
</table>
'
;}

if (isset(
$_POST['SActividades'])){
$Fecha $_POST["Fecha"];
$Jefe $_POST["Jefe"];
$Actividades $_POST["Actividades"];
echo 
'
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr> 
    <td colspan="2" align="center">'
.$Fecha.'</td>
  </tr>
  <tr>'
;
foreach(
$_POST['Seleccionado'] as $Seleccionado) {
$Sel mysql_query("SELECT * FROM miembros WHERE Miembro = '".$Seleccionado."'"$conect); 
//en esta linea es que da el error y lo escribe 4 veces
echo '<td align="center">'.mysql_result($Sel0"Nombre").' '.mysql_result($Sel0"S_Nombre").' '.mysql_result($Sel0"Apellido").'</td><td align="center">'.mysql_result($Sel0"S_Apellido").'</td><tr><td align="center">'
if (
$_POST["Jefe"]==$Seleccionado){echo '(JF)';}
echo 
'</td>';
}
echo 
'<tr> 
    <td colspan="2" align="center">'
.$Actividades.'</td>
  </tr>
</table>'
;}
?>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:27.