VeneHosting.com :: Tu Hosting en Venezuela

Autor Tema: Clase generica/Libreria basica para de php?  (Leído 830 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Xplorernet

  • Novato
  • *
  • Mensajes: 9
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
Clase generica/Libreria basica para de php?
« : 15 de marzo de 2008, 11:27:09 am »
        hola phperos de Venezuela, a todos estoy haciendo una clases(generica para cualquier sistema en php), que pronto publicare por aca con la idea de optimizarlo mejor, quiero me ayuden por favor a enumerar  cuales serial las funciones o procedimientos principales, a continuacion nombro con lo que ya cuento:

        • Validar inicio de usuario/Cookies/restricciones de usuario/usuarios en linea
        • crear formularios
        (inicial)-falta general vistas por la consulta
        • principios Foro
        • Principios del blog
        • Subir archivos/Forzar descargas
        • Sistema de Cache
        • Manejo de mysql(agregar,borrar, modificar,mostrar)
        (Listo)
        • Generar galeria de foto/video/musica(qt,wm,flas)
        • Validar formularios(solo si vacios "temporalmente")
        (listo, pero falta validar solo numero, letras o mascara)
        • Administrador de plantilla(solo cambia la combinacion de colores y se guarda db)
        • mensajeria privada
        (No relevante)
        • Lector de archivos de textos/xml/formatos personalizados
        (importante aun me falta)
        • editor de texto enriquesido
        (tengo un codigo en un cd q he hecho desde hace 2 años)

        • Enviar correo
        (No relevante)

      Alquien sabe como puedo extrar un respaldo de una base de datos algo similar a oscommerce?
      Es evidente que se me escapa algo o diria bastante  el detalles es que sera? s:-\:

      Actualizado, cabe destacar que he observado que pocos comentarios en relacion a los objetivos o metas de este codigo, aun no he abandonado esta idea,  por favor ayudemen a simplificarla o reducir su admito que aun lo falta muchisimas cosas para el planteamiento original, pero para llegar lejos hay que dar el primer paso  ;D

      simpleklaze.php
      <?php
      #Clase Generia para  Php(SimpleKlaZe),  0.1.0
      /************************************************************************************
      *Realizado por XplorerNet, cualquier comentarios o sugerencia a
thenetuno@yahoo.com
Hecho criollamente desde la Llanura en Venezuela 2008
#####################################################################################
   Esta archivo se encuentra en face  experimental no me hago responsable del mal uso
o fallas del mismo, se realizo con la idea de realizar aprendizaje, puede distribuirlo o reeditarlo pero
recuerde hacer mension del autor.
*************************************************************************************/
$sbasica['ubiw'] = $_SERVER['HTTP_HOST'];
$sbasica['dire'] = $_SERVER['DOCUMENT_ROOT'];
$sbasica['titulo'] ="Mi Pagina";#Titulo en la pagina web opcional ''
$sbasica['descripcion'] = "una pagina rapida"; #etiqueta palabras claves "keywords"
$sbasica['kw'] = "php, generar formulario"; #etiqueta para describir el contenido "keywords"
$sbasica['type']= "text/html;charset=ISO-8859-1";#Estandar en la codificacion, proximamente las estandares que para criollos
$sbasica['servidordb'] = "localhost"; #   Direccion ip o hostname
$sbasica['nombredb'] = "dbgenerico"; #Nombre de la Base de datos
$sbasica['usuariodb'] = "usuario"; #usuario
$sbasica['clavedb'] = ""; #Contraseña
$sbasica['galleta'] = "migalleta";#Cookies
$sbasica['vgalleta'] = 3600 * 12;#Cookies
$sbasica['ur'] = 0;

class DB_mysql {
var $BaseDatos;  var $Servidor; var $Usuario;  var $Clave;
var $Conexion_ID = 0; var $Consulta_ID = 0;

var $Errno = 0; var $Error = "";


function DB_mysql($bd = "", $host = "localhost", $user = "nobody", $pass = "") {
$this->BaseDatos = $bd; $this->Servidor = $host;
$this->Usuario = $user; $this->Clave = $pass;}

function conectar($bd, $host, $user, $pass){
if ($bd != "") $this->BaseDatos = $bd;
if ($host != "") $this->Servidor = $host;
if ($user != "") $this->Usuario = $user;
if ($pass != "") $this->Clave = $pass;

$this->Conexion_ID = mysql_connect($this->Servidor, $this->Usuario, $this->Clave);

if (!$this->Conexion_ID) {
$this->Error = "Ha fallado la conexión.";
return 0;}

if (!@mysql_select_db($this->BaseDatos, $this->Conexion_ID)) {
$this->Error = "Imposible abrir ".$this->BaseDatos ;
return 0;}
return $this->Conexion_ID;}


function consulta($sql = ""){
   if ($sql == "") {
   $this->Error = "No ha especificado una consulta SQL";
   return 0;}
   $this->Consulta_ID = @mysql_query($sql, $this->Conexion_ID);
 

if (!$this->Consulta_ID) {
$this->Errno = mysql_errno();
$this->Error = mysql_error();
}return $this->Consulta_ID;}

function numcampos() {
return mysql_num_fields($this->Consulta_ID);
}
function numregistros(){
return mysql_num_rows($this->Consulta_ID);}

function nombrecampo($numcampo) {
return mysql_field_name($this->Consulta_ID, $numcampo);
}


function obtenerregistro(){
   return mysql_fetch_array($this->Consulta_ID); }
//function liberar(){return mysql_free_result($this->Consulta_ID);}

function crearlista($consulta, $comentario, $nombrelista){
$listallena = '<select name="" lang="es">
  <option value="3243">hii</option>
</select>';
return $listallena;
}

function registro(){ return mysql_fetch_row($this->Consulta_ID);}

}


//Generador de Formulario y Validacion de requieridos
class Gen_For{
var $nombref; var $titulof; var $camposf;
var $dcamposf; var $tcamposf; var $mcamposf;
var $valcampo;

function valform(){
$camf = explode ("-",$this->camposf);
$dcamf = explode ("-",$this->dcamposf);
$totalf = count($camf);
$k=0; $parta = ""; $partb ="";
do{
$parta = $parta. '"' .$camf[$k] . '"'; $partb .= '"' .$dcamf[$k] . '"';
if ($totalf > ($k + 1)){$parta .= ',';$partb .= ',';}
$k++;
}while ($k <$totalf);
echo '<script language="JavaScript">
function formCheck_'. $this->nombref .'(formobj,campos,comentario){
   // Enter name of mandatory fields
   var fieldRequired = Array('. $parta .');var fieldDescription = Array ('. $partb .');
   // dialog message
   var alertMsg = "Por favor debe completar correctamente los siguientes campos: \n";
   
   var l_Msg = alertMsg.length;
   
   for (var i = 0; i < fieldRequired.length; i++){
      var obj = formobj.elements[fieldRequired];
      if (obj){
         switch(obj.type){
         case "select-one":
            if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
               alertMsg += " - " + fieldDescription + "\n";
            }
            break;
         case "select-multiple":
            if (obj.selectedIndex == -1){
               alertMsg += " - " + fieldDescription + "\n";
            }
            break;
         case "text":
         case "radio":
          case "password":
         case "textarea":
            if (obj.value == "" || obj.value == null){
               alertMsg += " - " + fieldDescription + "\n";
            }
            break;
         default:
         }
         if (obj.type == undefined){
            var blnchecked = false;
            for (var j = 0; j < obj.length; j++){
               if (obj[j].checked){
                  blnchecked = true;
               }
            }
            if (!blnchecked){
               alertMsg += " - " + fieldDescription + "\n";
            }
         }
      }
   }

   if (alertMsg.length == l_Msg){
      return true;
   }else{
      alert(alertMsg);
      return false;
   }}
</script>';

}

function ftipocampo($tipocampo){
//Texto + password+Oculto+seleccion+radio
   $res = 'text';
      switch ($tipocampo) {
         case 'texto':   $res = 'text';  break;
         case 1:   $res = 'password';break;
         case 2:   $res = 'checkbox';break;
         case 2:   $res = 'hidden';break;
      }
   return $res;
}


function create(){
//Principal funcion donde junta  las minis funciones
$f = explode ("-",$this->camposf);
$texform = explode ("-",$this->dcamposf);
$typecampo = explode ("-",$this->tcamposf); //print_r($typecampo);
$anchom = explode ("-",$this->mcamposf);
$rellform = explode ("-",$this->valcampo);
echo '<form  enctype="application/x-www-form-urlencoded" method="post" action="';
echo $this->nombref . '_procesar.php"  name="'. $this->nombref. '" onsubmit="return formCheck_'. $this->nombref  .'(this);">';

echo '<table  class="formulario"><tr>
    <td colspan="2" class="titulosf"><div align="center" class="textitulo">'. $this->titulof .'</div></td></tr><tr>
    <td width="135"><a class="textodescripcion">'. $texform[0] .'</a> </td>
    <td width="253"><input type="'. $f[0] . '" name="'. $f[0] . '" id="'. $f[0] . '"  maxlength="'. $anchom[1] . '" /></td>
    </tr>'; $totalcampos = count($f);
      $i = 1;
           do{
           echo '<tr><td><a class="textodescripcion">'. $texform[$i] . '</a></td>';
          echo '<td><input type="'. $typecampo[$i]  .'" name="'. $f[$i] . '" id="'. $f[$i] . '"  maxlength="'. $anchom[1] . '"  value="'. $rellform[$i] . '" /></td></tr>';
         $i++;
          } while ($i<$totalcampos);
      echo '<tr><td colspan="2"><div align="right">
      <input name="boton" type="submit" class="botonf" id="boton" value="Enviar" />
      <input name="Reset" type="reset" class="botonf" value="Borrar" />
    </div></td>
    </tr>
</table>';
echo '</form>';
//print_r($this->composf);
}

function gformdb($consultasql, $describir, $clases){


}



//fin de Gen_For


}

//Cargando las Clases
$accesodb = new DB_mysql;
//$accesodb->conectar($sbasica['nombredb'],$sbasica['servidordb'],$sbasica['usuariodb'],$sbasica['clavedb']);
$formulario = new Gen_For;
?>




Index.php

<?php

require('simpleklaze.php');
echo '<head>';
$formulario->nombref = "entrar"; $formulario->titulof = "Acceso de usuario";
$formulario->camposf = "usuario-pass";
$formulario->dcamposf = "Nombre de Usuario-Clave de usuario";
$formulario->tcamposf = "text-password";
$formulario->mcamposf = "10-10-10"; $formulario->valcampo = "-";
$formulario->valform();
echo '<link href="de_css.css" rel="stylesheet" type="text/css" />';
echo '<title>'. $sbasica['titulo'] . '->' . $formulario->titulof . '</title></head>';
echo '<body>';
$formulario->create();
echo '</body>';
?>
« Última Modificación: 05 de octubre de 2008, 04:47:49 pm por Xplorernet »

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re: Clase generica para sistemas de php?
« Respuesta #1 : 15 de marzo de 2008, 05:21:51 pm »
Podrias agregarle, administrador de contenido. Por ejemplo agregar comentarios, o modificar textos, pero eso sería ya algo mas complicado. Aunque tam,bien seria bueno, un validador de formulario(Campos de Mail, Fortalezas de contraseñas, esas cosas) Te agradeceria que publicases el codigo fuente y ver en que te puedo ayudar.

Desconectado manwebcam

  • Novato
  • *
  • Mensajes: 10
  • Puntuación: 0
    • Ver Perfil
Re: Clase generica para sistemas de php?
« Respuesta #2 : 31 de marzo de 2008, 04:29:13 pm »
paginacion de noticias o contenido
funciones para el manejo y tratamiento de imagenes ( modificar imagenes y guardarlas)

eso podria ayudar

Desconectado Nativo..!

  • Usuario Junior
  • **
  • Mensajes: 76
  • Puntuación: 1
  • Sexo: Masculino
    • Ver Perfil
    • El Blog de Paredes...
Re: Clase generica para sistemas de php?
« Respuesta #3 : 14 de abril de 2008, 10:53:56 am »
Lector de txt no estaria mal...   ::)
Quiero aprender y compartir mi saber...

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re: Clase generica para sistemas de php?
« Respuesta #4 : 16 de abril de 2008, 06:35:07 pm »
Lector de txt no estaria mal...   ::)

Un lector de txt en que sentido?  Para leer archivos de texto plano. O sea tomar todas la funciones de la IO de PHP y meterlas en un clase?

Desconectado crafter

  • Novato
  • *
  • Mensajes: 2
  • Puntuación: 0
    • Ver Perfil
Re: Clase generica/Libreria basica para de php?
« Respuesta #5 : 21 de agosto de 2009, 02:05:28 pm »
Deberias tratar de Separar el HTML del Codigo PHP

en vez de hacer esto:

<?php
$var=1;
echo '<b>$var</b>';
?>

es mejor hacer esto:

<?php
$var=1;
?>
<b><?php echo $var; ?></b>

el ultimo Codigo se genera mucho mas rapido que el primero esta ya comprobado por los grandes del PHP y aparte de eso te quedara un codigo mucho mas Limpio :)

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re: Clase generica/Libreria basica para de php?
« Respuesta #6 : 22 de agosto de 2009, 12:17:02 am »
Código: [Seleccionar]
<?php
$var
=1;
echo &
#39;<b>$var</b>&#39;;
?>

Código: [Seleccionar]
<?php
$var
=1;
?>

<b><?php echo $var?></b>

el ultimo Codigo se genera mucho mas rapido que el primero esta ya comprobado por los grandes del PHP y aparte de eso te quedara un codigo mucho mas Limpio :)

Solo quería aclarar que respecto a la velocidad de ejecución, el primer codigo era mucho mas lento pero en la rama 4 de php, en PHP5 las diferencia de tiempo en ejecución son nulas.

Desconectado Alexander Garzon

  • Alexander Garzon
  • Administrador
  • Fanático
  • *****
  • Mensajes: 288
  • Puntuación: 15
  • Sexo: Masculino
    • Ver Perfil
    • PHP de Venezuela
Re: Clase generica/Libreria basica para de php?
« Respuesta #7 : 22 de agosto de 2009, 10:39:07 am »
¿A todas estas no es mejor un Framework? Muy buena la iniciativa de cualquier modo.
Alexander Garzon
Director
PHP de Venezuela

Desconectado deivinsontejeda

  • Usuario Junior
  • **
  • Mensajes: 63
  • Puntuación: -2
  • Sexo: Masculino
    • Ver Perfil
    • KumbiaPHP Framework
Re: Clase generica/Libreria basica para de php?
« Respuesta #8 : 22 de agosto de 2009, 12:34:07 pm »
Concuerdo con Alexander, ya un Framework hace este trabajo, pero tu esfuerzo es lo que cuenta como sugerencia veo que la clase esta hecha en PHP4, PHP5 ya existen lo modificadores de acceso (public, proteted, private) parece trivial pero no lo es, o por lo menos para mí.

Éxitos!
Atte...
Deivinson Tejeda (CaChi)

http://cachi.temiga.org
http://www.kumbiaphp.com

Una sociedad libre es aquella que garantiza que sus recursos más importantes permanecen libre
Free Software, Free Society

Desconectado oyepez003

  • Usuario Dedicado
  • ***
  • Mensajes: 143
  • Puntuación: 6
  • Sexo: Masculino
  • La suerte esta en el conocimiento
    • Ver Perfil
    • Soluciones tecnológicas YepSua C.A.
Re: Clase generica/Libreria basica para de php?
« Respuesta #9 : 22 de agosto de 2009, 03:25:31 pm »
Gracias Xplorernet quizas existan pequeños proyectos que la mejor solucion sea no usar framework y podriamos usar tus funciones.
--
Omar Yepez
http://www.yepsua.com The YepSua team
http://jquery4php.sourceforge.net/ The jQuery4PHP project
Sigueme: http://twitter.com/oyepez003

PHP de Venezuela

Re: Clase generica/Libreria basica para de php?
« Respuesta #9 : 22 de agosto de 2009, 03:25:31 pm »

 

PHP de Venezuela on Facebook