Bastante bronca conque me haya cagado una boludez.
NO DESCUBRI el error.
Lo que hice fue:
1) Cambie lo de la moficacion, y no la permito mas.
Simplemente le pido por JScript mucha confirmacion sobre lo que esta grabando. Y listo.
2) En un lugar si o si tengo que hacer modificacion ( que es cuando updateo el ranking ). Asi que cambie el algoritmo, a uno mucho mas eficiente. Si bien no me tiraba el error seguro esto lo arreglo. ESPERO!
En cuanto pueda poner Slackware les juro que lo pruebo. Sorry que no anduvo :(
Saludos
//isset($_POST['hidInfoID']) && \r
if (isset($_POST['txtComentario'])) {\r
$__hidID = info_ingresar_comentario( $__hidID, $id, $_POST['txtComentario'], $_SESSION['user']->getId() );\r
- info_form_ingresar_comentario( $__hidID, $id, $_POST['txtComentario'] );\r
- } else {\r
- info_form_ingresar_comentario( $__hidID, $id, "" ); \r
}\r
+ info_form_ingresar_comentario( -1, $id, "" );\r
} else {\r
echo warn("No esta habilitado para dar de alta comentarios, debe ser socio o asesor");\r
}\r
\r
if (isset($_POST['txtTema']) && isset($_POST['txtURL']) && isset($_POST['txtComentario'])) {\r
$__hidID = info_ingresar_info( $__hidID, $_POST['txtTema'], $_POST['txtURL'], $_SESSION['user']->getId(), $_POST['txtComentario'] );\r
- info_form_ingresar_info( $__hidID, $_POST['txtTema'], $_POST['txtURL'], $_POST['txtComentario'] );\r
- } else {\r
- info_form_ingresar_info( $__hidID, "", "", "" ); \r
}\r
+ info_form_ingresar_info( -1, "", "", "" ); \r
} else {\r
echo warn("No esta habilitado para dar de alta informacion, debe ser socio o asesor");\r
}\r
\r
if (isset($_POST['txtNombre']) && isset($_FILES['txtIcono']) && isset($_POST['txtDescripcion'])) {\r
$__hidID = info_ingresar_tema( $__hidID, $_POST['txtNombre'], $_SESSION['user']->getId(), $_POST['txtDescripcion'], $_FILES['txtIcono']['tmp_name'] );\r
- info_form_ingresar_tema( $__hidID, $_POST['txtNombre'], $_FILES['txtIcono'], $_POST['txtDescripcion'] );\r
- } else {\r
- info_form_ingresar_tema( $__hidID, "", "", "" ); \r
}\r
+ info_form_ingresar_tema( -1, "", "", "" );\r
} else {\r
echo warn("No esta habilitado para dar de alta un tema, debe ser administrador del sistema");\r
}\r
return fappendcsv($this->comentarioCSVConst, array( $this->id, $this->autor, $this->texto, $this->fecha ));
}
- function saveExisting() {
- if (($f = fopen($this->comentarioCSVConst, 'r')) == false) return false; // error
- $index = 0;
- $indexSave = 0;
- while (!feof($f))
- {
- $d = fgetcsv($f, 4096);
- $index++;
- if ($d[0] == $this->id)
- {
- fclose($f);
- if (($f = fopen($this->comentarioCSVConst, 'r+')) == false) return false; // error
- while ($indexSave!=($index-1)) { fgetcsv($f, 4096); $indexSave++; }
- fputcsv($f, array( $this->id, $this->autor, $this->texto, $this->fecha ));
- fclose($f);
- return true;
- }
- }
- fclose($f);
- return false;
- }
-
function saveLoadThis( $pId, $pInfo_ID, $pComentario, $pAutor ) {
$this->id = $pId;
$this->autor = $pAutor;
return $resultado;
}
- function modificar( $pId, $pInfo_ID, $pComentario, $pAutor ) {
- $this->saveLoadThis( $pId, $pInfo_ID, $pComentario, $pAutor );
- $resultado = "";
- if (!$this->saveExisting()) {
- $resultado = "<strong>ERROR</strong> al modificar el comentario. Revise que los parametros sean los adecuados";
- file_log_add($pAutor,$resultado);
- } else {
- file_log_add($pAutor,"Se modificó el comentario");
- }
- return $resultado;
- }
-
function toHTML() {
?><tr>
<?php
}\r
\r
function saveExisting() {\r
- if (($f = fopen($this->infoCSVConst, 'r')) == false) return false; // error\r
+ if (($f = fopen($this->infoCSVConst, 'r+')) == false) return false; // error\r
$index = 0;\r
- $indexSave = 0;\r
while (!feof($f))\r
{\r
+ $index = ftell($f);\r
$d = fgetcsv($f, 4096);\r
- $index++;\r
- if ($d[0] == $this->id)\r
+ if ($d[0] == $this->id)\r
{\r
- fclose($f);\r
- if (($f = fopen($this->infoCSVConst, 'r+')) == false) return false; // error\r
- while ($indexSave!=($index-1)) { fgetcsv($f, 4096); $indexSave++; }\r
- fputcsv($f, array($this->id, $this->tema, $this->url, $this->autor, $this->comentario, $this->ranking, $this->fecha));\r
+ fseek($f,$index);\r
+ fputcsv($f, array($this->id, $this->tema, $this->url, $this->autor, $this->comentario, $this->ranking, $this->fecha));\r
fclose($f);\r
return true;\r
}\r
return $resultado;\r
}\r
\r
- function modificar( $pId, $pTema, $pURL, $pAutor, $pComentario ) {\r
- $this->saveLoadThis( $pId, $pTema, $pURL, $pAutor, $pComentario );\r
- $resultado = "";\r
- if (!$this->saveExisting()) {\r
- $resultado = "<strong>ERROR</strong> al modificar la informacion. Revise que los parametros sean los adecuados";\r
- file_log_add($pAutor,$resultado);\r
- } else {\r
- file_log_add($pAutor,"Se modificó la información");\r
- }\r
- return $resultado;\r
- }\r
-\r
function toHTML() {\r
?><tr>\r
<td><img src="<?php echo $this->tema_icono;?>" border="0" alt="icono tema"/></td>\r
return fappendcsv($this->temasCSVConst, array($this->id, $this->autor, $this->nombre, $this->icono, $this->texto, $this->fecha));\r
}\r
\r
- function saveExisting() {\r
- if (($f = fopen($this->temasCSVConst, 'r')) == false) return false; // error\r
- $index = 0;\r
- $indexSave = 0;\r
- while (!feof($f))\r
- {\r
- $d = fgetcsv($f, 4096);\r
- $index++;\r
- if ($d[0] == $this->id)\r
- {\r
- fclose($f);\r
- if (($f = fopen($this->temasCSVConst, 'r+')) == false) return false; // error\r
- while ($indexSave!=($index-1)) { fgetcsv($f, 4096); $indexSave++; }\r
- fputcsv($f, array($this->id, $this->autor, $this->nombre, $this->icono, $this->texto, $this->fecha));\r
- fclose($f);\r
- return true;\r
- }\r
- }\r
- fclose($f);\r
- return false;\r
- }\r
-\r
function saveLoadThis( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
$this->id = $pId;\r
$this->autor = $pAutor;\r
return $resultado;\r
}\r
\r
- function modificar( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
- $this->saveLoadThis( $pId, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
- $resultado = "";\r
- //Se obtiene el ID mas alto actual\r
- if (!$this->saveExisting()) {\r
- $resultado = "<strong>ERROR</strong> al modificar el Tema '" . $pNombre . "'. Revise que los parametros sean los adecuados";\r
- file_log_add( $pAutor, $resultado);\r
- } else {\r
- if (!copy($pIcono, "temas/" . $pId)) {\r
- $resultado = "No se pudo modificar la foto.";\r
- file_log_add( $pAutor, $resultado);\r
- } else {\r
- file_log_add( $pAutor, "Se modificó el el '" . $pNombre . "'");\r
- }\r
- }\r
- return $resultado;\r
- }\r
-\r
function toHTML() {\r
$objUser = new Usuario($this->autor);\r
?><tr>\r
<!--\r
function info_validar_ingresar_tema(f)\r
{\r
- if ( (!check_vacio(f.txtNombre, 'Nombre')) || (!check_min_max_cant(f.txtURL, 'URL', 5, 20)) ) return false;\r
+ if ( (!check_vacio(f.txtNombre, 'Tema')) || (!check_min_max_cant(f.txtNombre, 'Tema', 5, 20)) ) return false;\r
if ( (!check_vacio(f.txtIcono, 'Icono')) ) return false;\r
- if ( (!check_vacio(f.txtDescripcion, 'Descripcion')) || (!check_min_max_cant(f.txtURL, 'URL', 5, 200)) ) return false;\r
- return true;\r
+ if ( (!check_vacio(f.txtDescripcion, 'Descripcion')) || (!check_min_max_cant(f.txtDescripcion, 'Descripcion', 5, 200)) ) return false;\r
+ return confirm("Confirma que los datos son correctos?\n\nTema: " + f.txtNombre.value + "\nIcono: " + f.txtIcono.value + "\nDescripcion: " + f.txtDescripcion.value + "\n");\r
}\r
-\r
- function info_blankActual(f) {\r
- if (confirm("Seguro desea perder la posibilidad de modificar?")) {\r
- location.href = "<?php echo $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']; ?>";\r
- }\r
- }\r
-->\r
</script>\r
<table>\r
<td><textarea name="txtDescripcion" rows="3" cols="50"><?php echo $descripcion ?></textarea></td>\r
</tr>\r
<tr>\r
- <? if ( $__hidID == -1 ) { ?>\r
- <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Tema"/></td>\r
- <? } else { ?>\r
- <td colspan="2">\r
- <input type="submit" name="btnSubmit" value="Modificar Tema"/> \r
- <input type="button" name="btnNew" value="Nuevo Tema" onclick="info_blankActual(this.form);"/> \r
- </td>\r
- <? } ?>\r
+ <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Tema"/></td>\r
+ </tr>\r
+ <tr>\r
+ <td colspan="2"><i>Una vez guardados los datos no pueden ser modificados. Verifique los mismos antes de hacerlo.</i></td>\r
</tr>\r
</table>\r
</form>\r
if ( (!check_vacio(f.txtTema, 'Tema')) ) return false;\r
if ( (!check_vacio(f.txtURL, 'URL')) || (!check_min_max_cant(f.txtURL, 'URL', 5, 200)) ) return false;\r
if ( (!check_vacio(f.txtComentario, 'Comentario')) || (!check_min_max_cant(f.txtComentario, 'Comentario', 10, 500)) ) return false;\r
- return true;\r
+ return confirm("Confirma que los datos son correctos?\n\nTema: " + f.txtNombre.value + "\nIcono: " + f.txtIcono.value + "\nDescripcion: " + f.txtDescripcion.value + "\n");\r
}\r
-\r
- function info_blankActual(f) {\r
- if (confirm("Seguro desea perder la posibilidad de modificar?")) {\r
- location.href = "<?php echo $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']; ?>";\r
- }\r
- }\r
-->\r
</script>\r
<table>\r
<td><textarea name="txtComentario" rows="3" cols="50"><?php echo $comentario ?></textarea></td>\r
</tr>\r
<tr>\r
- <? if ( $__hidID == -1 ) { ?>\r
- <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Información"/></td>\r
- <? } else { ?>\r
- <td colspan="2">\r
- <input type="submit" name="btnSubmit" value="Modificar Información"/> \r
- <input type="button" name="btnNew" value="Nueva Información" onclick="info_blankActual(this.form);"/> \r
- </td>\r
- <? } ?>\r
+ <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Información"/></td>\r
+ </tr>\r
+ <tr>\r
+ <td colspan="2"><i>Una vez guardados los datos no pueden ser modificados. Verifique los mismos antes de hacerlo.</i></td>\r
</tr>\r
</table>\r
</form>\r
function info_validar_ingresar_comentario(f)\r
{\r
if ( (!check_vacio(f.txtComentario, 'Comentario') || (!check_min_max_cant(f.txtComentario, 'Comentario', 10, 500)) ) ) return false;\r
- return true;\r
+ return confirm("Confirma que los datos son correctos?\n\nComentario: " + f.txtComentario.value + "\n");\r
}\r
-\r
- function info_blankActual(f) {\r
- if (confirm("Seguro desea perder la posibilidad de modificar?")) {\r
- location.href = "<?php echo $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']; ?>";\r
- }\r
- }\r
-->\r
</script>\r
<table>\r
<td><textarea name="txtComentario" rows="3" cols="50"><?php echo $comentario ?></textarea></td>\r
</tr>\r
<tr>\r
- <? if ( $__hidID == -1 ) { ?>\r
- <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Comentario"/></td>\r
- <? } else { ?>\r
- <td colspan="2">\r
- <input type="submit" name="btnSubmit" value="Modificar Comentario"/> \r
- <input type="button" name="btnNew" value="Nuevo Comentario" onclick="info_blankActual(this.form);"/> \r
- </td>\r
- <? } ?>\r
+ <td colspan="2"><input type="submit" name="btnSubmit" value="Guardar Comentario"/></td>\r
+ </tr>\r
+ <tr>\r
+ <td colspan="2"><i>Una vez guardados los datos no pueden ser modificados. Verifique los mismos antes de hacerlo.</i></td>\r
</tr>\r
</table>\r
</form>\r
\r
function info_ingresar_tema( $__hidID, $pNombre, $pAutor, $pDescripcion, $pIcono ) {\r
$objTema = new Tema(0,0);\r
- if ($__hidID == -1 ) {\r
- $__hidID = info_obtener_mayor_id() + 1;\r
- $resultado = $objTema->ingresar( $__hidID, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
- if ( $resultado == "" ) {\r
- echo ok("Se agregó el Tema '" . $pNombre . "'");\r
- } else {\r
- echo warn($resultado);\r
- }\r
+ $__hidID = info_obtener_mayor_id() + 1;\r
+ $resultado = $objTema->ingresar( $__hidID, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se agregó el Tema '" . $pNombre . "'");\r
} else {\r
- $resultado = $objTema->modificar( $__hidID, $pNombre, $pAutor, $pDescripcion, $pIcono );\r
- if ( $resultado == "" ) {\r
- echo ok("Se modificó el Tema '" . $pNombre . "'");\r
- } else {\r
- echo warn($resultado);\r
- }\r
+ echo warn($resultado);\r
}\r
-\r
return $__hidID;\r
}\r
\r
\r
function info_ingresar_info( $__hidID, $pTema, $pURL, $pAutor, $pComentario ) {\r
$objInfo = new Info(0,0);\r
- if ($__hidID == -1 ) {\r
- $__hidID = info_obtener_mayor_id_info() + 1;\r
- $resultado = $objInfo->ingresar( $__hidID, $pTema, $pURL, $pAutor, $pComentario );\r
- if ( $resultado == "" ) {\r
- echo ok("Se agregó la información.");\r
- } else {\r
- echo warn($resultado);\r
- }\r
+ $__hidID = info_obtener_mayor_id_info() + 1;\r
+ $resultado = $objInfo->ingresar( $__hidID, $pTema, $pURL, $pAutor, $pComentario );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se agregó la información.");\r
} else {\r
- $resultado = $objInfo->modificar( $__hidID, $pTema, $pURL, $pAutor, $pComentario );\r
- if ( $resultado == "" ) {\r
- echo ok("Se modificó la información.");\r
- } else {\r
- echo warn($resultado);\r
- }\r
+ echo warn($resultado);\r
}\r
return $__hidID;\r
}\r
\r
function info_ingresar_comentario( $__hidID, $pInfo_ID, $pComentario, $pAutor ) {\r
$objInfo = new Comentario(0,0,0);\r
-\r
- if ($__hidID == -1 ) {\r
- $__hidID = info_obtener_mayor_id_comentario($pInfo_ID) + 1;\r
- $resultado = $objInfo->ingresar( $__hidID, $pInfo_ID, $pComentario, $pAutor );\r
- if ( $resultado == "" ) {\r
- echo ok("Se agregó el comentario.");\r
- } else {\r
- echo warn($resultado);\r
- }\r
+ $__hidID = info_obtener_mayor_id_comentario($pInfo_ID) + 1;\r
+ $resultado = $objInfo->ingresar( $__hidID, $pInfo_ID, $pComentario, $pAutor );\r
+ if ( $resultado == "" ) {\r
+ echo ok("Se agregó el comentario.");\r
} else {\r
- $resultado = $objInfo->modificar( $__hidID, $pInfo_ID, $pComentario, $pAutor );\r
- if ( $resultado == "" ) {\r
- echo ok("Se modificó el comentario.");\r
- } else {\r
- echo warn($resultado);\r
- }\r
+ echo warn($resultado);\r
}\r
return $__hidID;\r
}\r