Ver Mensaje Individual
  #6 (permalink)  
Antiguo 16/05/2003, 23:32
kech
 
Fecha de Ingreso: marzo-2003
Mensajes: 277
Antigüedad: 21 años, 1 mes
Puntos: 0
aqui tienes una solucion seria mejor que separaras los chistes por archivos
y en el codigo cuando llames a la variable archivo le pones haci

$archivo[$cat]

este es el codigo que modifique tiene algunos @ por que me arrojanban error con variables que parece que son de tu pagina

como en la parte donde dice atras no encuentro donde defines la varible pagina

y en la variable

menubar la cambie donde decia

if(!$menubar) {
$menubar="0";
}

la cambie por

if(!isset($menubar)) {
$menubar="";
}

aca esta el codigo editado

Código PHP:
<?php
$archivo
= array(
    
"abogados" => "abogados.db",
    
"adivinanzas" => "adivinanzas.db",
    
"borrachos" => "borrachos.db",
    
"chistes picaros" => "chistes_picaros.db",
    
"clasificados" => "clasificados.db",
    
"colmos" => "colmos.db",
    
"como se dice" => "como_se_dice.db",
    
"computadores" => "computadores.db",
    
"feministas" => "feministas.db",
    
"gallegos" => "gallegos.db",
    
"historias" => "historias.db",
    
"mama, mama" => "mama_mama.db",
    
"no es lo mismo" => "no_es_lo_mismo.db",
    
"papa, papa" => "papa_papa.db",
    
"que le dijo" => "que_le_dijo.db",
    
"religiosos" => "religiosos.db",
    
"suegras" => "suegras.db",
    
"trabalenguas" => "trabalenguas.db",
    
"machistas" => "machistas.db",
    
"medicos" => "medicos.db",
    
"otros" => "otros.db");

    
$porpagina="15";


function 
chistes($cat) {
    global 
$archivo;
 
$file file($archivo[$cat]);
  
$x=0;
   while(list(,
$value) = each($file)){
    list(
$categoria,$nombre,$chiste) = explode("|"$value);

      if(
$categoria == $cat){
       
$x++;
      }
   }

  if(
$x == 0) {
      return 
"0 chistes";
  } elseif(
$x == 1) {
      return 
"1 chiste";
  } elseif(
$x 1) {
      return 
"$x chistes";
  }

}


function 
total_cat($cat) {
    global 
$archivo;
 
$file file($archivo[$cat]);
  
$x=0;
   while(list(,
$value) = each($file)){
    list(
$categoria,$nombre,$chiste) = explode("|"$value);

      if(
$categoria == $cat){
       
$x++;
      }
   }

return 
"$x";
}

if(@
$load == "agregar") {


 if(empty(
$_POST['nombre'])) {
  echo 
"<center><font class=FONDOBLANCO size='2'>No agregaste tu nombre</center>";
 }

 elseif(empty(
$_POST['chiste'])) {
     echo 
"<center><font class=FONDOBLANCO size='2'>No agregaste un chiste</center>";
 }

 elseif(empty(
$_POST['categoria'])) {
     echo 
"<center><font class=FONDOBLANCO size='2'>Debes elegir una categoría para tu chiste</center>";
 }

 else {

$autor=$_POST['nombre'];
$categoria=$_POST['categoria'];
$chiste=$_POST['chiste'];

$chiste ereg_replace("\r\n","<br>"$chiste);
$chiste str_replace("|","|"$chiste);
$autor str_replace("|","|"$autor);

$ordenado="$categoria|$autor|$chiste|\n";

$a1=fopen($archivo[$categoria], "a+");
flock($a1,2);
$fw=fwrite($a1$ordenado);
fclose($a1);

echo 
"<font class=FONDOBLANCO>El chiste se agregó correctamente $autor, gracias por tu aporte<br>
<META HTTP-EQUIV=Refresh CONTENT=\"2; URL=?load=ver&cat=$categoria\">"
;


 }
}

elseif(@
$load == "nuevo") {
echo<<<formularionuevo
<br><br>

<form action="?load=agregar" method="POST">
<table align=center width=90% border=0 cellpadding="2"
cellspacing="0">
<tr>
<td valign=top class=FONDOBLANCO>Tu Nombre:</td>
<td><input type=text name=nombre maxlength=30 size=20>
</tr>
<tr>
<td valign=top class=FONDOBLANCO>Chiste:</td>
<td><textarea name="chiste" cols=30 rows=6></textarea></td>
</tr>
<tr>
<td valign=top class=FONDOBLANCO>Categoria:</td>
<td><select size=1 name=categoria>
    <option value="abogados">Abogados</option>
    <option value="adivinanzas">Adivinanzas</option>
    <option value="borrachos">Borrachos</option>
    <option value="chistes picaros">Chistes Picaros</option>
    <option value="clasificados">Clasificados</option>
    <option value="colmos">Colmos</option>
    <option value="como se dice">Como se dice</option>
    <option value="computadores">Computadores</option>
    <option value="feministas">Feministas</option>
    <option value="Gallegos">Gallegos</option>
    <option value="historias">Historias</option>
    <option value="machistas">Machistas</option>
    <option value="mama, mama">Mamá, mamá</option>
    <option value="medicos">Médicos</option>
    <option value="no es lo mismo">No es lo mismo</option>
    <option value="papa papa">Papá, papá</option>
    <option value="que le dijo">Qué le dijo</option>
    <option value="religiosos">Religiosos</option>
    <option value="suegras">Suegras</option>
    <option value="trabalenguas">Trabalenguas</option>
    <option value="otros">Otros</option>
</select>
</td>
</tr>
<tr>
<td width=100% colspan=2 align=center>
<br><input style='BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; FONT-SIZE: 11px; BORDER-LEFT: black 1px solid; COLOR: black; BORDER-BOTTOM: black 1px solid; FONT-FAMILY: verdana; BACKGROUND-COLOR: orange' type="submit" value="  Agregar Chiste  "></td>
</tr>
</table>
<br><br>
formularionuevo;
}

elseif(@
$load == "ver") {
$listar="si";

 if(empty(
$_GET['cat'])) {
     echo 
"<font class=FONDOBLANCO>No haz elegido una categoria";
     
$listar="no";
 }

 
$chi="".total_cat($_GET['cat'])."";
 if(
$chi == "0") {

     echo 
"<font class=FONDOBLANCO>No hay chistes en esta seccion";
      
$listar="no";
 }


if(
$listar == "no") {} else {

  if(empty(
$_GET['pagina'])) {
    
$inicio=0;
    
$fin=$porpagina;
  } else {
    
$inicio=$_GET['pagina'] * $porpagina;
    
$fin=$inicio $porpagina;
  }

  
$totalcat="".total_cat($_GET['cat'])."";

    if(
$porpagina $totalcat) {
    
$paginasson $totalcat $porpagina;


    if(!isset(
$menubar)) {
      
$menubar="";
       }

    for(
$i 0$i $paginasson$i++) {
    
$menubar.="<a class=FONDOBLANCO href=?load=ver&cat=$cat&pagina=".$i.">". ( $i ) ."</a> \n";
    }
    }
 
$pagina 0;
  if( 
$pagina ) {
         
$atras="<a class=FONDOBLANCO href='?pagina=". ( $pagina ) ."'>Atras</a>";
  } else {
      
$atras="Atras";
  }


  if( 
$fin $totalcat ) {
      
$siguiente="<a class=FONDOBLANCO href='?pagina=". ( $pagina ) ."'>Siguiente</a>";
  } else {
      
$siguiente="Siguiente";
  }


    
$bd file($archivo[$cat]);
    
$chistes array_reverse($bd);

    for (
$i $inicio$i count($chistes) AND $i $fin$i++) {
        
$dato explode("|"$chistes[$i]);
      if(
$dato[0] == $_GET['cat']) {

       
$categoria $dato[0];
       
$autor $dato[1];
       
$chiste =str_replace ("\\","",$dato[2]);

       echo 
"<font class=FONDOBLANCO>$chiste</font><div align=right><font color='#0000ff' size='1' face='Verdana, Arial, Helvetica, sans-serif'>Enviado por:</font></strong>
<font color='#006600' size='1' face='Verdana, Arial, Helvetica, sans-serif'>$autor</font></div>
       <hr align=center size='1' color=#ff0000>"
;

      }
    }

echo 
"<font class=FONDOBLANCO><center>Paginas: $menubar</center><br>";

}

}


else {

echo 
"<br><font size='2' class=FONDOBLANCO><center>Cantidad de Chistes por categoría.</center><br><br>

<a class=FONDOBLANCO href='?load=ver&cat=abogados'>Abogados</a>
      [ "
.chistes('abogados')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=adivinanzas'>Adivinanzas</a>
      [ "
.chistes('adivinanzas')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=borrachos'>Borrachos</a>
      [ "
.chistes('borrachos')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=chistes picaros'>Chistes Picaros</a>
      [ "
.chistes('chistes picaros')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=clasificados'>Clasificados</a>
      [ "
.chistes('clasificados')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=colmos'>Colmos</a>
      [ "
.chistes('colmos')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=como se dice'>Como se dice</a>
      [ "
.chistes('como se dice')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=computadores'>Computadores</a>
      [ "
.chistes('computadores')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=feministas'>Feministas</a>
      [ "
.chistes('feministas')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=gallegos'>Gallegos</a>
      [ "
.chistes('gallegos')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=historias'>Historias</a>
      [ "
.chistes('historias')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=machistas'>Machistas</a>
      [ "
.chistes('machistas')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=mama, mama'>Mamá, Mamá</a>
      [ "
.chistes('mama, mama')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=medicos'>Médicos</a>
      [ "
.chistes('medicos')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=no es lo mismo'>No es lo mismo</a>
      [ "
.chistes('no es lo mismo')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=papa, papa'>Papá, papá</a>
      [ "
.chistes('papa, papa')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=que le dijo'>Qué le dijo</a>
      [ "
.chistes('que le dijo')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=religiosos'>Religiosos</a>
      [ "
.chistes('religiosos')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=suegras'>Suegras</a>
      [ "
.chistes('suegras')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=trabalenguas'>Trabalenguas</a>
      [ "
.chistes('trabalenguas')." ]<br>

<a class=FONDOBLANCO href='?load=ver&cat=otros'>Otros</a>
      [ "
.chistes('otros')." ]

<br><br>
    <center><a class=FONDOBLANCO href='?load=nuevo'>Agregar Chiste</a></center>"
;
}
?>
lo que tendrias que hacer es poner cada chiste en su correspondiente archivo, los archivos que tienes que crear son los que aparecen arriba en el array
cuando una persona te envie un chiste automaticamente se va agregar al archivo segun categoria

salu2 ojala te sirva



Última edición por kech; 17/05/2003 a las 00:11