Ver Mensaje Individual
  #21 (permalink)  
Antiguo 06/05/2011, 22:01
angelfcm
(Desactivado)
 
Fecha de Ingreso: abril-2011
Mensajes: 153
Antigüedad: 13 años
Puntos: 236
Respuesta: insertar en datatabase solo filas no vacias...

Hola!,
Me tome unos minutos para revisar tus archivos y me dí cuenta que desordenaste algunas partes del código que te pase, además tu código tenía muchos errores.
Te digo algunas reglas:
  • Siempre debes cerrar las etiquetas html, si abres debes cerrarla antes de abrir otra(Tenías algunas mal).
  • El header() de php siempre debe ir antes de cualquier tipo de salidad( tu tenías html antes de header()), ni un solo espacio va antes de <?php header().
  • Las etiquetas <style> y <script> por estandar van dentro de la etiqueta <head>
  • Debes incluir o requerir archivos con extensión .inc(tú escribiste include("../conexión.php")
Bueno para finalizar, cambia completamente tus archivos por los que te dejo (NO MUEVAS NADA DE NADA).

Código PHP:
<?php 
include ("../conexion.inc");
header("Content-type:text/html;charset=ISO-8859-1");
?>
<html>
<head>
<script>
var numchecks=0;
function buscarChecks(Form){
 for(x=0;x<document.getElementsByTagName("input").length;x++){
 var nodo=document.getElementsByTagName("input")[x];
 if(nodo.type=='checkbox' && /^c([0-9]+)$/i.test(nodo.name))
 numchecks++ }
 Form.numchecks.value=numchecks;
}
</script>
</head>
<body>
<form action="pruebaelaboradatos1.php" method="post" onsubmit="buscarChecks(this)">
<input type="hidden" name="numchecks" value="0" />
<?php
//***************************************************************************
/* Realizamos la consulta SQL */
$sql"SELECT  e_nombre  FROM estudiantes where id=19";

$resultmysql_query($sql) or die(mysql_error());
if(
mysql_num_rows($result)==0)die("No hay registros para mostrar"); 
//**********************************************************************
$sql2"SELECT  ob1,  ob2,  ob3,  ob4,  ob5,  ob6,  ob7,  ob8,  ob9,  ob10,  ob11,  ob12,  ob13,  ob14  FROM objetivos WHERE id=6 ";
$result2mysql_query($sql2) or die(mysql_error());
if(
mysql_num_rows($result2)==0) die("No hay registros para mostrar");    
//*************************************************************************


echo "<table border=1 cellpadding=1 cellspacing=0>";
echo 
"<tr><th colspan=18><center>  GRUPO SEXTO A 'MATEMATICAS'</th><tr>";

# construyendo los encabezados de la tabla
echo " <th bgcolor=silver><font size=1 ><center>___________ESTUDIANTE___________</center></font></th>
<th bgcolor=silver><font size=1 ><center>01</center></font></th>
<th bgcolor=silver><font size=1 ><center>02</center></font></th>
<th bgcolor=silver><font size=1 ><center>03</center></font></th>
<th bgcolor=silver><font size=1 ><center>04</center></font></th>
<th bgcolor=silver><font size=1 ><center>05</center></font></th>
<th bgcolor=silver><font size=1 ><center>06</center></font></th>
<th bgcolor=silver><font size=1 ><center>07</center></font></th>
<th bgcolor=silver><font size=1 ><center>08</center></font></th>
<th bgcolor=silver><font size=1 ><center>09</center></font></th>
<th bgcolor=silver><font size=1 ><center>10</center></font></th>
<th bgcolor=silver><font size=1 ><center>11</center></font></th>
<th bgcolor=silver><font size=1 ><center>12</center></font></th>
<th bgcolor=silver><font size=1 ><center>13</center></font></th>
<th bgcolor=silver><font size=1 ><center>14</center></font></th>
<th bgcolor=silver><font size=1 ><center>Nota</center></font></th>
<th bgcolor=silver><font size=1 ><center>Juicio Valorativo</center></font></th>
<th bgcolor=silver><font size=1 ><center></center></font></th></TR>"
;
//*************************************************************************
/*Y ahora todos los registros */
while($row2=mysql_fetch_array($result2))

 

while(
$row=mysql_fetch_array($result))
//*****************************************************
{
echo 
"<tr>
<td> $row[e_nombre] </td>
<td>"
; if($row2['ob1'] != ""){ echo "<input type='checkbox' name=c1 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob2'] != ""){ echo "<input type='checkbox' name=c2 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob3'] != ""){ echo "<input type='checkbox' name=c3 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob4'] != ""){ echo "<input type='checkbox' name=c4 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob5'] != ""){ echo "<input type='checkbox' name=c5 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob6'] != ""){ echo "<input type='checkbox' name=c6 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob7'] != ""){ echo "<input type='checkbox' name=c7 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob8'] != ""){ echo "<input type='checkbox' name=c8 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob9'] != ""){ echo "<input type='checkbox' name=c9 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob10'] != ""){ echo "<input type='checkbox' name=c10 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob11'] != ""){ echo "<input type='checkbox' name=c11 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob12'] != ""){ echo "<input type='checkbox' name=c12 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob13'] != ""){ echo "<input type='checkbox' name=c13 value=1 >"; } else{ echo ""; } echo "</td>
<td>"
; if($row2['ob14'] != ""){ echo "<input type='checkbox' name=c14 value=1 >"; } else{ echo ""; } echo "</td>
<td> <input name='nota3' type='text' id='nota3' size='10' maxlength='10' /> </td>
<td> <input name='juicio' type='text' id='juicio' size='40' maxlength='150' /> </td>
<td> <input type='submit' name='button' id='button' value='Enviar' /> </td>
</tr>"
;
}
echo 
"</table></form>";  

?>
</body>
</html>
Código PHP:
<?php
 
include ("../conexion.inc");
?>
<html>
<head>
<style type="text/css">
.font {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 16px;
    color: #F00;
}
</style>
</head>
<body>
<?
///////////////////////////////////////////////////////////////////////////////////////////////////////////// 
# post & checkbox
$nota3 $_POST['nota3'];
$val $_POST['val']; 
$juicio $_POST['juicio']; 
$numChecks $_POST['numchecks'];
$maxChecks=14;
$consultaChecks="";
for(
$x=1;$x<=$maxChecks;$x++){
    if(
$x<=$numChecks)
    eval(
"\$actual=\$_POST[c".$x."]?'F':'D';");
    else 
$actual="";
    if(
$consultaChecks)
    
$consultaChecks.=", c".$x."='".$actual."'";
    else 
$consultaChecks="c1='".$actual."'";
    }
/////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
# valoracion 
$val=($nota3!="" && $nota3<3.0)?
     
"bajo":
    (
    (
$nota3>=3.0 && $nota3<=3.6)?
    
"básico":
    (
    (
$nota3>=3.7 && $nota3<=4.3)?
     
"alto":
     
"superior"
     
)
     ); 

 
$sql "UPDATE SEXTO_A_MAT SET ".$consultaChecks.", 
 nota3='$nota3', val='$val' , juicio='$juicio'
 WHERE id=1"

echo 
$sql;
$result mysql_query($sql) or die(mysql_error());
mysql_close(); 
//////////////////////////////////////////////////////////////////////////////////////////////////////////////// 

echo "<center> datos insertados con exito </center>"
?>

 <center><a href="javascript:history.back(1)" class="font">Volver Atrás</a></center>
</body>
</html>
DEBES DE CAMBIAR LA EXTENSIÓN DE TU ARCHIVO conexión.php A .inc, es decir, conexion.inc.
TE VUELVO A REPETIR, NO MODIFIQUES NADA TODO DEJALO COMO TE LO DEJÉ,

SALUDOS!