elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Temas
Páginas: [1]
1  Programación / PHP / Paginador de resultados ayuda! en: 15 Mayo 2010, 17:47 pm
Hola! que tal, verán estoy tratando de hacer un paginador de resultados de un buscador de usuarios, pero lamentablemente no me sale, tengo este codigo, que es el mostrar_resultados.php, pero al hacer la busqueda en vez de mostrar 5 resultados me muestra 6, y al pasar a siguiente, me muestra todos los usuarios de la bd.
Entonces la pregunta es cómo hago para poder paginarlo bien?, hay algo que estoy haciendo mal? cuando la pagina ya existe como hago para cargarla y que siga manteniendo la consulta?

Código
  1. <?php
  2. include('header.inc');
  3.  
  4.  
  5. if(!$_SESSION['usuario']=='usuario'){
  6. header("Location: index.php");// si no es igual a nick te direcciona al inicio u a otra pagina
  7. }
  8.  
  9. include_once ("connect.php");
  10.  
  11. $id=$_SESSION["id"];
  12. $usuario=$_SESSION["usuario"];
  13.  
  14.  
  15. $sexo = (!empty($_POST["sexo"])
  16.    ? " sexo='".trim($_POST["sexo"])."'"
  17.        : "");
  18.  
  19. $interestin = (!empty($_POST["interestin"])
  20.        ? (!empty($sexo)
  21.                ? " AND interestin='".trim($_POST["interestin"])."'"
  22.                : " interestin='".trim($_POST["interestin"])."'")
  23.        : "");
  24.  
  25. $pais = (!empty($_POST["pais"])
  26.        ? (!empty($sexo) || !empty($interestin)
  27.                ? " AND pais='".trim($_POST["pais"])."'"
  28.                : " pais='".trim($_POST["pais"])."'")
  29.        : "");
  30.  
  31. $estadocivil= (!empty($_POST["estadocivil"])
  32.        ? (!empty($sexo) || !empty($interestin) || !empty($pais)
  33.                ? " AND estadocivil='".trim($_POST["estadocivil"])."'"
  34.                : " estadocivil='".trim($_POST["estadocivil"])."'")
  35.        : "");
  36.  
  37.  
  38.  
  39. $where = (!empty($sexo) || !empty($interestin) || !empty($pais) || !empty($estadocivil)  
  40.        ? " WHERE "
  41.        : "");
  42.  
  43.  
  44.  
  45. $s = "SELECT * FROM members "
  46.        . $where
  47.        . $sexo
  48.        . $interestin
  49.        . $pais
  50.        . $estadocivil;
  51.  
  52. $query = mysql_query($s) or die(mysql_error());
  53.  
  54. if (!isset($pag)) $pag = 1; // Por defecto, pagina 1
  55. $result = mysql_query("SELECT COUNT(*) FROM members");
  56. list($total) = mysql_fetch_row($result);
  57. $tampag = 5;
  58. $reg1 = ($pag-1) * $tampag;
  59. $result = mysql_query("SELECT sexo, interestin, pais, estadocivil FROM members
  60.  LIMIT $reg1, $tampag");
  61.  
  62.  
  63. function paginar($actual, $total, $por_pagina, $enlace) {
  64.  $total_paginas = ceil($total/$por_pagina);
  65.  $anterior = $actual - 1;
  66.  $posterior = $actual + 1;
  67.  if ($actual>1)
  68.    $texto = "<a href=\"$enlace$anterior\">&laquo;</a> ";
  69.  else
  70.    $texto = "<b>&laquo;</b> ";
  71.  for ($i=1; $i<$actual; $i++)
  72.    $texto .= "<a href=\"$enlace$i\">$i</a> ";
  73.  $texto .= "<b>$actual</b> ";
  74.  for ($i=$actual+1; $i<=$total_paginas; $i++)
  75.    $texto .= "<a href=\"$enlace$i\">$i</a> ";
  76.  if ($actual<$total_paginas)
  77.    $texto .= "<a href=\"$enlace$posterior\">&raquo;</a>";
  78.  else
  79.    $texto .= "<b>&raquo;</b>";
  80.  return $texto;
  81. }
  82.  
  83.  
  84.  
  85. while($row = mysql_fetch_array($query)) {
  86.  
  87.  
  88.  
  89.  
  90. ?>

en la parte del html, muestro los detalles del usuario haciendo
Código
  1. <?php echo $row['estadocivil'];?>
por ejemplo

y en el final de la pagina hago lo siguiente

Código
  1. <?php echo paginar($pag, $total, $tampag, "mostrar_resultados.php?pag="); ?>

Gracias por leer.
2  Programación / PHP / Añadir y eliminar contactos problema en: 30 Abril 2010, 21:17 pm
Hola que tal, veran estoy haciendo un eliminar y mostrar contactos de cada usuario; el problema que me surge es que me muestra todas los usuarios que hay; y el $cnt me dice por ejemplo tienes 3 usuarios, todo bien, pero en la lista salen todos los que hay y no esos 3.
Tampoco se eliminan los usuarios que uno quiere eliminar.
Dejo el codigo por las dudas.

Código
  1. <?php
  2. error_reporting(E_ALL ^ E_NOTICE);
  3. session_name('pLogin');
  4. include("connect.php");
  5.  
  6. $usuario=$_SESSION['usuario'];
  7. $tid=$_GET["id"];
  8. $id=$_SESSION["id"];
  9.  
  10. $msg1="";
  11. $to_delete="";
  12. $items_removed=0;
  13. if ( count($_POST)<>0 )
  14. {
  15. /////////////////////////// A REQUEST TO DELETE SOME CONTACTS ///////////////
  16.  
  17. for($i=1;$i<=$_REQUEST["cnt"];$i++)
  18. {
  19.  
  20. if ( isset($_REQUEST["checkbox" . $i]) )  //Is the checkbox ticked
  21. {
  22. if ($to_delete!="") { $to_delete.="," ; }  //To insert comma??
  23. $to_delete.= $_REQUEST["checkbox" . $i];  //Add another item to delete
  24. $items_removed++;
  25. }
  26.  
  27. } //End For
  28. if ($to_delete=="")
  29. {
  30. $msg1=" No se puede eliminar ningun usuario de la lista de contactos ";
  31. }
  32. else
  33. {
  34. $del_str="  Delete from dm_contacts where dm_contact_id IN (" . $to_delete .")";
  35. mysql_query($del_str);
  36. $msg1= ($items_removed > 1)?$items_removed . " Usuarios que han sido removidos de tu lista de contactos":$items_removed . " El usuario ha sido removido de tu lista";
  37. }
  38. header("Location:"." msg_confirm_mem.php?errmsg=".urlencode($msg1));
  39. die();
  40. /////////////////////////////CONTACTS HAVE BEEN REMOVED /////////////////////
  41. }
  42.  
  43.  
  44.  
  45. $rs0_query=mysql_query("Select count(*) from dm_contacts  where  dm_uid =" .$tid );
  46. $rs0=mysql_fetch_array($rs0_query);
  47. $contact_count=$rs0[0];
  48.  
  49. $rs0_query=mysql_query("SELECT * FROM dm_contacts, members WHERE dm_contacts.dm_contact_id=members.id" );
  50. ?>
  51. <script language="javascript">
  52. function validate(form)
  53. {
  54. if((form.username.value==""))
  55. {
  56. alert('Por favor especifica un nombre de usuario');
  57. form.username.focus();
  58. return false;
  59. }
  60. return true;
  61. }
  62. </script>
  63. <table width="100%" border="0" cellpadding="0" cellspacing="0" >
  64.  <tr>
  65.    <td colspan="3" valign="top"><table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
  66.        <tr>
  67.          <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
  68.              <tr>
  69.                <td class="titlestyle">&nbsp;Añadir a mi lista de contactos</td>
  70.              </tr>
  71.            </table></td>
  72.        </tr>
  73.        <tr>
  74.          <td><table width="100%" border="0" align="center" cellpadding="2" cellspacing="5" class="onepxtable">
  75.              <form name="form1" method="post" action="addcontact.php" onSubmit="return validate(this);">
  76.                <tr valign="top">
  77.                  <td width="40%" align="right" class="innertablestyle"><table width="100%" border="0" cellspacing="0" cellpadding="0">
  78.                      <tr align="right">
  79.                        <td width="60%"><font class="normal"><strong><font class='normal'>
  80.                          </font></strong></font></td>
  81.                        <td><font class="normal"><strong><font class='normal'>Username</font></strong></font></td>
  82.                      </tr>
  83.                    </table></td>
  84.                  <td width="6">&nbsp;</td>
  85.                  <td width="60%"><font face="Arial, Helvetica, sans-serif" size="2">
  86.                    <input type="text" name="username">
  87.                    </font></td>
  88.                </tr>
  89.                <tr valign="top">
  90.                  <td align="right" class="innertablestyle">&nbsp;</td>
  91.                  <td>&nbsp;</td>
  92.                  <td><input type="submit" name="Submit2" value="Add User"></td>
  93.                </tr>
  94.              </form>
  95.            </table></td>
  96.        </tr>
  97.      </table>
  98.  
  99.    </td>
  100.  </tr>
  101.  <tr>
  102.    <td height="25" colspan="3" valign="middle"> <div align="center"><font class='red'>
  103.        </font></div></td>
  104.  </tr>
  105.  <tr>
  106.    <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
  107.        <tr>
  108.          <td valign="top"> <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0" class="onepxtable">
  109.              <tr >
  110.                <td valign="top"> <table width="100%" border="0" align="center" cellpadding="2" cellspacing="0" class="innertablestyle">
  111.                    <tr>
  112.                      <td height="25" class="titlestyle">&nbsp;Mis contactos</td>
  113.                    </tr>
  114.                    <tr>
  115.                      <td height="25" valign="middle"><font class='normal'>Tu lista de contactos tiene <strong><font class='red'><?php echo $contact_count; ?></font></strong><?php
  116. if( $contact_count>1)
  117. {
  118. echo " usuarios";
  119. }
  120. else
  121. {
  122. echo " usuario";
  123. }
  124. ?></font><font class='red'><br>
  125.                        </font></td>
  126.                    </tr>
  127.                    <tr>
  128.                      <td height="25" valign="middle"><font class='normal'>To
  129.                        remove a user from my contacts list just check the check
  130.                        box and click the remove button below.</font></td>
  131.                    </tr>
  132.                    <tr>
  133.                      <td valign="top">
  134.  <script language="javascript">
  135. //<!--
  136. function select_all()
  137. {
  138.  for (var i=0;i<document.form2.elements.length;i++)
  139.  {
  140. var e =document. form2.elements[i];
  141. if ((e.name != 'check_all') && (e.type=='checkbox'))
  142. {
  143.   e.checked = document.form2.check_all.checked;
  144. }
  145.  }
  146. }
  147. function validate_rem(form)
  148. {
  149. var checked='no';
  150.  for (var i=0;i<form.elements.length;i++)
  151.  {
  152. var e =form.elements[i];
  153. if (e.checked==true)
  154. {
  155.   checked='yes';
  156. }
  157.  }
  158. if(checked=='no')
  159. {
  160. alert('Por favor elige al menos un contacto a eliminar');
  161. return false;
  162. }
  163. return true;
  164. }
  165. //-->
  166. </script>
  167. <form name="form2" method="post" action="mostrarcontactos.php" onSubmit="return validate_rem(this);">
  168.                          <table width="100%" border="0" align="center" cellpadding="2" cellspacing="1">
  169.                            <tr class="subtitle">
  170.                              <td width="10" align="right"> <input name="check_all" type="checkbox" id="check_all" onClick="select_all();" value="yes"></td>
  171.                              <td height="25"><b><font class='normal'>Usuario</font></b></td>
  172.                              <!--td><b><font class='normal'>Company Name </font></b></td>
  173.                              <td><b><font class='normal'>Phone</font></b></td>
  174.                              <td><b><font class='normal'>Fax</font></b></td-->
  175.                            </tr>
  176.                            <?php
  177. $cnt=0;
  178. while ($rs0=mysql_fetch_array($rs0_query))
  179. {
  180.  $cnt++;
  181.  
  182.  
  183.  
  184. ?>
  185.                            <tr>
  186.                              <td width="10" align="right" ><font class='normal'>
  187.                                <input type="checkbox" name="checkbox<?php echo $cnt;?>" value="<?php
  188.   echo $rs0["dm_uid"];?>">
  189.                                </font></td>
  190.                              <td ><font class='normal'><a href="replyuser.php?type=contact&tid=<?php echo $rs0["dm_contact_id"];?>" ><?php echo $rs0["usuario"];?></a>
  191.                                </font></td>
  192.  
  193.                            </tr>
  194.                            <?php
  195. }
  196. ?>
  197.                            <tr >
  198.                              <td colspan="2" align="left"> <input type="hidden" name="cnt" value="<?php echo $cnt; ?>">
  199.                                <input type="submit" name="Submit3" value="Remove">
  200.                              </td>
  201.                              <!--td>&nbsp;</td>
  202.                              <td>&nbsp;</td>
  203.                              <td>&nbsp;</td-->
  204.                            </tr>
  205.                          </table>
  206.                        </form></td>
  207.                    </tr>
  208.                  </table></td>
  209.              </tr>
  210.            </table></td>
  211.        </tr>
  212.        <tr>
  213.          <td>&nbsp;</td>
  214.        </tr>
  215.      </table></td>
  216.  </tr>
  217. </table>

el dm_uid-> es la id del usuario de la sesion
el dm_contacts_id-> es la id del contacto añadido.


Gracias de antemano
3  Programación / PHP / Usar libreria gd, para redimensionar imagenes. en: 22 Abril 2010, 16:03 pm
Hola que tal, les comento tengo este codigo para subir imagenes, todo bien se hace la insercion a la bd, pero que pasa... me gustaria poder redimensionar esas imagenes para que se muestren por ejemplo en el perfil. Cómo se podria usar la libreria en este codigo?, o se usa aparte. Alguien podria guiarme?

Gracias de antemano, den_22

Dejo el codigo:

Código
  1. <?php
  2. error_reporting(E_ALL ^ E_NOTICE);
  3. session_name('pLogin');
  4.  
  5. include("connect.php");
  6.  
  7.  
  8. $id=$_SESSION['id'];
  9.  
  10.  
  11. define ("MAX_SIZE","500");
  12.  
  13.  
  14. function getExtension($str) {
  15.         $i = strrpos($str,".");
  16.         if (!$i) { return ""; }
  17.         $l = strlen($str) - $i;
  18.         $ext = substr($str,$i+1,$l);
  19.         return $ext;
  20. }
  21.  
  22.  
  23.  
  24. $errors=0;
  25.  
  26. if(isset($_POST['Submit']))
  27. {
  28.  
  29. $image=$_FILES['image']['name'];
  30.  
  31. if ($image)
  32. {
  33.  
  34. $filename = stripslashes($_FILES['image']['name']);
  35.  
  36.   $extension = getExtension($filename);
  37. $extension = strtolower($extension);
  38.  
  39. if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif"))
  40. {
  41. //print error message
  42. echo '<h1>No es una imagen!</h1>';
  43. $errors=1;
  44. }
  45. else
  46. {
  47.  
  48.  
  49.  
  50. $size=filesize($_FILES['image']['tmp_name']);
  51.  
  52. //comparamos el tamaño definido con este
  53. if ($size > MAX_SIZE*1024)
  54. {
  55. echo '<h1>Has excedido el limite permitido!</h1>';
  56. $errors=1;
  57. }
  58.  
  59.  
  60. $image_name=time().'.'.$extension;
  61.  
  62. $newname="images/".$image_name;
  63. //verificamos si se subió la imagen, e imprimimos el error en todo caso
  64. $copied = copy($_FILES['image']['tmp_name'], $newname);
  65. if (!$copied)
  66. {
  67. echo '<h1>No se ha podido subir la imagen!</h1>';
  68. $errors=1;
  69. }}}}
  70.  
  71. //Si no hay errores imprimir el mensaje
  72. if(isset($_POST['Submit']) && !$errors)
  73. {
  74. echo "<h1>El archivo subió correctamente</h1>";
  75. UPDATE prueba
  76. SET picture='$image_name'
  77. WHERE id='$_SESSION[id]'  ");
  78. }
  79.  
  80.  
  81.  
  82.  
4  Programación / PHP / Haciendo un buscador en: 3 Abril 2010, 04:59 am
Hola que tal, estoy tratando de hacer un buscador tengo este archivo search.php, que la parte del php es algo asi:

Código
  1.  
  2. <?
  3. error_reporting(E_ALL ^ E_NOTICE);
  4. session_name('pLogin');
  5.  
  6. include("function.php");
  7. include("connect.php");
  8. include("getdata.php");
  9.  
  10. $query = mysql_query("select * from prueba where usuario='$usuario'");
  11.   $getname = mysql_fetch_array($query);
  12.   $firstname = $getname["firstname"];
  13.   $lastname =$getname["lastname"];
  14.   $gender= $getname["sexo"];
  15.   $estadocivil=$getname["estadocivil"];
  16.   $pais=$getname["pais"];
  17. ?>
  18.  

y la parte del html asi


Código
  1. <table width="470" height="254" border="1">
  2. <form action="search_results.php" method="post">
  3.  <tr>
  4.    <td width="189">Nombre:</td>
  5.    <td width="265"><?php echo $firstname;?><input type="text" name="firstname" class="main_text_normal" style="width: 100%;"></td>
  6.  </tr>
  7.  <tr>
  8.    <td>Apellido:</td>
  9.    <td><?php echo $lastname;?><input type="text" name="lastname" class="main_text_normal" style="width: 100%;"></td>
  10.  </tr>
  11.  <tr>
  12.    <td>Pais:</td>
  13.    <td><select size=1 NAME='pais'>
  14.  
  15.          <option <?php if ($user_ok[pais]=="Argentina") echo "selected"; ?>>Argentina</option>
  16.          <option <?php if ($user_ok[pais]=="Bolivia") echo "selected"; ?>>Bolivia</option>
  17.          <option <?php if ($user_ok[pais]=="Chile") echo "selected"; ?>>Chile</option>
  18.  <option <?php if ($user_ok[pais]=="Costa Rica") echo "selected"; ?>>Costa Rica</option>
  19.  <option <?php if ($user_ok[pais]=="Cuba") echo "selected"; ?>>Cuba</option>
  20.  <option <?php if ($user_ok[pais]=="Ecuador") echo "selected"; ?>>Ecuador</option>
  21.  <option <?php if ($user_ok[pais]=="El Salvador") echo "selected"; ?>>El Salvador</option>
  22.  <option <?php if ($user_ok[pais]=="Espana") echo "selected"; ?>>Espana</option>
  23.  <option <?php if ($user_ok[pais]=="Guatemala") echo "selected"; ?>>Guatemala</option>
  24.  <option <?php if ($user_ok[pais]=="Guinea Ecuatorial") echo "selected"; ?>>Guinea Ecuatorial</option>
  25.  <option <?php if ($user_ok[pais]=="Honduras") echo "selected"; ?>>Honduras</option>
  26.  <option <?php if ($user_ok[pais]=="México") echo "selected"; ?>>México</option>
  27.  <option <?php if ($user_ok[pais]=="Nicaragua") echo "selected"; ?>>Nicaragua</option>
  28.  <option <?php if ($user_ok[pais]=="Panamá") echo "selected"; ?>>Panamá</option>
  29.  <option <?php if ($user_ok[pais]=="Paraguay") echo "selected"; ?>>Paraguay</option>
  30.  <option <?php if ($user_ok[pais]=="Perú") echo "selected"; ?>>Perú</option>
  31.  <option <?php if ($user_ok[pais]=="Puerto Rico") echo "selected"; ?>>Puerto Rico</option>
  32.  <option <?php if ($user_ok[pais]=="República Dominicana") echo "selected"; ?>>República Dominicana</option>
  33.  <option <?php if ($user_ok[pais]=="Uruguay") echo "selected"; ?>>Uruguay</option>
  34.  <option <?php if ($user_ok[pais]=="Venezuela") echo "selected"; ?>>Venezuela</option>
  35.        </select> </td>
  36.  </tr>
  37.  <tr>
  38.    <td>Estado Civil: </td>
  39.    <td><select size=1 NAME='estadocivil'>
  40.          <option></option>
  41.          <option <?php if ($user_ok[estadocivil]=="Soltero/a") echo "selected"; ?>>Soltero/a</option>
  42.          <option <?php if ($user_ok[estadocivil]=="Divorciado/a") echo "selected"; ?>>Divorciado/a</option>
  43.  </select></td>
  44.  </tr>
  45.  <tr>
  46.    <td>Genero:</td>
  47.    <td><select size=1 NAME='sexo'>
  48.          <option></option>
  49.          <option <?php if ($user_ok[sexo]=="Masculino") echo "selected"; ?>>Masculino</option>
  50.          <option <?php if ($user_ok[sexo]=="Femenino") echo "selected"; ?>>Femenino</option>
  51.  
  52.        </select></td>
  53.  </tr>
  54.  </form>

ahora bien, al hacer click en buscar, llama al archivo search_results.php que es el siguiente:


Código
  1. <?
  2.  
  3. error_reporting(E_ALL ^ E_NOTICE);
  4.  
  5. session_name('pLogin');
  6. include('connect.php');
  7. $usuario = $_SESSION['usuario'];
  8.  
  9. $firstname=$_POST['firstname'];
  10. $lastname=$_POST['lastname'];
  11. $estadocivil=$_POST['estadocivil'];
  12. $gender=$_POST['sexo'];
  13. $pais=$_POST['pais'];
  14.  
  15.  
  16.  
  17. $query= mysql_query("select * from prueba where firstname='".$firstname."' AND lastname='".$lastname."'AND sexo='".$gender."' AND estadocivil='".$estadocivil."' AND pais='".$pais."'");
  18.  
  19.  
  20.  
  21. ?>
  22.  
  23.  

en el html de este archivo hago un <?php echo $firstname;?>, por ejemplo.

Mi pregunta es, en qué estoy fallando porque no me busca ningun usuario. Está bien como lo estoy haciendo?

De antemano gracias, solo busco algo de orientacion.
5  Programación / PHP / Perfil de un usuario, problema! en: 5 Marzo 2010, 04:44 am
Hola que tal, estoy haciendo un modificar perfil. La cuestion es que quiero que el usuario al presionar sobre modificar perfil le aparezcan algunos datos que completó en el registro, y los demás deba rellenarlo.
Tengo un Warning en la linea 11 del getdata.php:"mysql_fetch_array(): supplied argument is not a valid MySQL result resource"

Lo que tengo hasta ahora es lo siguiente:

modificarperfil.php:
Código
  1. <?php
  2.  
  3. include("function.php");
  4. include("getdata.php");
  5. include("connect.php"); //incluimos el connect.php que contiene los datos de la conexión a la db y la sesión
  6.  
  7. if(!isset($_GET['usuario'])){
  8. echo 'No se ha seleccionado ningun usuario.';
  9. }else{
  10.  
  11.  
  12. $query=mysql_query("SELECT * FROM prueba WHERE usuario=$usuario ");
  13. if(mysql_num_rows($usuario)>0){
  14. $query=mysql_fetch_array($usuario);
  15.  
  16. //todo comprobado, ahora solo falta mostrar los datos
  17. echo 'Bienvenid@ <b>'.$usuario[usuario].'</b><br>';
  18.  
  19.  
  20. }else{
  21.  
  22. echo 'El usuario seleccionado no existe';
  23. }
  24. }
  25. ?>
  26.  

El function.php:

Código
  1. <?php
  2.  
  3.  
  4.  
  5.  
  6. function getfname($usuario)
  7. {
  8.    $query = mysql_query("select * from prueba where usuario=$usuario");
  9.    $getname= mysql_fetch_array($query);
  10.    $firstname= $getname["firstname"];
  11.    return $firstname;
  12. }
  13.  
  14. function getlname($usuario)
  15. {
  16.    $query =mysql_query("select * from prueba where usuario=$usuario");
  17.    $getname= mysql_fetch_array($query);
  18.    $lastname=$getname["lastname"];
  19.    return $lastname;
  20. }
  21.  
  22.  
  23. function getusuario($usuario)
  24. {
  25.    $query=mysql_query("select * from prueba where usuario=$usuario");
  26.    $getname=mysql_fetch_array($query);
  27.    $usuario=$getname["usuario"];
  28.    return $usuario;
  29. }
  30.  
  31. function getgender ($usuario)
  32. {
  33.    $query=mysql_query("select * from prueba where usuario=$usuario");
  34.    $getname=mysql_fetch_array($query);
  35.    $gender=$getname["Genero"];
  36.    return $gender;
  37. }
  38.  
  39.  
  40.  
  41.  
  42. ?>
  43.  

El getdata.php:

Código
  1. <?php
  2.  
  3.  
  4.  
  5. include "connect.php";
  6.  
  7. $query=mysql_query("select * from prueba where usuario=$usuario");
  8. $getname=mysql_fetch_array($query);  //linea 11 aqui esta el warning
  9.  
  10. $firstname=$getname["firstname"];
  11. $lastname=$getname["lastname"];
  12. $usuario=$getname["usuario"];
  13. $gender=$getname["genero"];
  14.  
  15.  
  16. ?>
  17.  

Lo que yo quiero es que me aparezcan en el formulario los datos a los que consulta en la bd.
En el formulario lo hago de esta forma:
Código
  1. <tr>
  2.      <td width="219">Nombre:</td>
  3.      <td width="270"><input name="firstname" type="text" id="firstname" value="<?php echo $firstname;?>"></td>
  4.    </tr>
  5.  

Esta es la base de datos, al hacer la consulta me devuelve un valor vacio, pero está completo ese valor.

Código
  1. CREATE TABLE `prueba` (
  2.  `id` INT(11) NOT NULL AUTO_INCREMENT,
  3. `firstname` VARCHAR(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  4. `lastname` VARCHAR(40) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  5.  `usuario` VARCHAR(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  6.  `pass` VARCHAR(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  7. `sexo` VARCHAR (32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  8.  `email` VARCHAR(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  9.  PRIMARY KEY  (`id`),
  10.  UNIQUE KEY `usuario` (`usuario`)
  11. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
  12.  


Gracias por leerlo, den_22
6  Programación / PHP / Problema con estos códigos en: 1 Marzo 2010, 17:00 pm
Hola ! que tal, estoy con un "pequeño problemita" la cuestión es la siguiente. Quiero hacer un apartado de un panel de control para modificar un perfil.
Tengo los siguientes códigos:
El modificarperfil.php

Código
  1. <?php
  2. include("function.php");
  3. include("getdata.php");
  4. include("connect.php"); //incluimos el connect.php que contiene los datos de la conexión a la db y la sesión
  5.  
  6. if(!isset($_GET['usuario'])){
  7. echo 'No se ha seleccionado ningun usuario.'; //no ha seleccionado usuario,
  8. }else{
  9.  
  10. //comprobamos si esa id existe
  11. $query=mysql_query("SELECT * FROM prueba WHERE usuario=$usuario ");
  12. if(mysql_num_rows($usuario)>0){
  13. $query=mysql_fetch_array($usuario);
  14.  
  15. //todo comprobado, ahora solo falta mostrar los datos
  16. echo 'Bienvenid@ <b>'.$usuario[usuario].'</b><br>';
  17.  
  18.  
  19. }else{
  20.  
  21. echo 'El usuario seleccionado no existe';
  22. }
  23. }
  24. ?>
  25.  


A su vez en la tabla de modificar perfil pongo lo siguiente para obtener los datos de la bd:
Código
  1. <td width="292"><input name="firstname" type="text" id="firstname" value="<?php echo $firstname;?>"></td>

El function.php:
Código
  1. <?php
  2. function getfname($id)
  3. {
  4. $query = mysql_query("select * from prueba where id=$id");
  5. $getname= mysql_fetch_array($query);
  6. $firstname= $getname["firstname"];
  7. return $firstname;
  8. }
  9.  
  10. function getlname($id)
  11. {
  12. $query =mysql_query("select * from prueba where id=$id");
  13. $getname= mysql_fetch_array($query);
  14. $lastname=$getname["lastname"];
  15. return $lastname;
  16. }
  17.  
  18.  
  19. function getusuario($id)
  20. {
  21. $query=mysql_query("select * from prueba where id=$id");
  22. $getname=mysql_fetch_array($query);
  23. $usuario=$getname["usuario"];
  24. return $usuario;
  25. }
  26.  
  27. function getgender ($id)
  28. {
  29. $query=mysql_query("select * from prueba where id=$id");
  30. $getname=mysql_fetch_array($query);
  31. $gender=$getname["Genero"];
  32. return $gender;
  33. }
  34.  
  35.  
  36.  
  37.  
  38. ?>
  39.  

El getdata.php:

Código
  1. <?php
  2. include "connect.php";
  3.  
  4. $query=mysql_query("select * from prueba where id=$id");
  5. $getname=mysql_fetch_array($query);
  6.  
  7. $firstname=$getname["firstname"];
  8. $lastname=$getname["lastname"];
  9. $usuario=$getname["usuario"];
  10. $gender=$getname["genero"];
  11.  
  12.  
  13. ?>
  14.  

El connect.php:
Código
  1. <?php
  2.  
  3. if(!defined('INCLUDE_CHECK')) die('No estás autorizado a ejecutar este archivo directamente');
  4.  
  5.  
  6. /* Database config */
  7.  
  8. $db_host = 'localhost';
  9. $db_user = 'user';
  10. $db_pass = 'xxxx';
  11. $db_database = 'prueba';
  12.  
  13. /* End config */
  14.  
  15.  
  16.  
  17. $link = mysql_connect($db_host,$db_user,$db_pass) or die('Imposible establecer la conexión a la base de datos');
  18.  
  19. mysql_select_db($db_database,$link);
  20. mysql_query("SET names UTF8");
  21.  
  22. ?>
  23.  

El error que me tira todo esto es que "No estás autorizado  a ejecutar este archivo directamente"

Gracias de antemano por tomarse el trabajo de leerlo. :)
7  Programación / PHP / Como hago con este codigo? en: 10 Febrero 2010, 23:43 pm
Hola, tengo una pregunta acerca de este código, la cuestion es que al querer hacer el registro siempre en el formulario, me dice "This username has already taken",ademas si no se registra en la bd, como ya va a estar siendo usado?. :huh:
Dejo el código a ver si me pueden dar una mano.(La parte en negrita calculo que debe estar provocando esto)

Código:
<?php
error_reporting(E_ALL ^ E_NOTICE);
session_start();

define('INCLUDE_CHECK',true);

require 'connect.php';
require 'functions.php';
// Those two files can be included only if INCLUDE_CHECK is defined


session_name('tzLogin');
// Starting the session

session_set_cookie_params(2*7*24*60*60);
// Making the cookie live for 2 weeks

session_start();

if($_SESSION['id'] && !isset($_COOKIE['tzRemember']) && !$_SESSION['rememberMe'])
{
// If you are logged in, but you don't have the allnurseRemember cookie (browser restart)
// and you have not checked the rememberMe checkbox:

$_SESSION = array();
session_destroy();

// Destroy the session
}


if(isset($_GET['logoff']))
{
$_SESSION = array();
session_destroy();

header("Location: demo.php");
exit;
}

if($_POST['submit']=='Login')
{
// Checking whether the Login form has been submitted

$err = array();
// Will hold our errors


if(!$_POST['username'] || !$_POST['password'])
$err[] = 'All the fields must be filled in!';

if(!count($err))
{
$_POST['username'] = mysql_real_escape_string($_POST['username']);
$_POST['password'] = mysql_real_escape_string($_POST['password']);
$_POST['rememberMe'] = (int)$_POST['rememberMe'];

// Escaping all input data

$row = mysql_fetch_assoc(mysql_query("SELECT id,usr FROM tz_members WHERE usr='{$_POST['username']}' AND pass='".md5($_POST['password'])."'"));

if($row['usr'])
{
// If everything is OK login

//$_SESSION['username']=$row['user'];
$_SESSION['usr']=$row['usr'];
$_SESSION['id'] = $row['id'];
$_SESSION['type'] = $row['type'];
$_SESSION['rememberMe'] = $_POST['rememberMe'];

// Store some data in the session

setcookie('tzRemember',$_POST['rememberMe']);
}
else $err[]='Wrong username and/or password!';
}

if($err)
$_SESSION['msg']['login-err'] = implode('<br />',$err);
// Save the error messages in the session

header("Location: demo.php");
exit;
}
else if($_POST['submit']=='Register')
{
// If the Register form has been submitted

$err = array();

if(strlen($_POST['firstname'])>100)
{
$err[]='Your lastname must be less 100 characters!';
}

if(!preg_match('/[^0-9\-\_\.]+/i',$_POST['firstname']))
{
$err[]='Your firstname contains invalid characters!';
}

if(strlen($_POST['lastname'])>100)
{
$err[]='Your lastname must be less 100 characters!';
}

if(!preg_match('/[^0-9\-\_\.]+/i',$_POST['lastname']))
{
$err[]='Your lastname contains invalid characters!';
}

if(strlen($_POST['username'])<4 || strlen($_POST['username'])>100)
{
$err[]='Your username must be between 4 and 100 characters!';
}

if(preg_match('/[^a-z0-9\-\_\.]+/i',$_POST['username']))
{
$err[]='Your username contains invalid characters!';
}

if(strlen($_POST['password'])<6 || strlen($_POST['password'])>32)
{
$err[]='Your username must be between 6 and 32 characters!';
}

if(preg_match('/[^a-z0-9\-\_\.]+/i',$_POST['password']))
{
$err[]='Your password is weak!';
}

if($_POST['repassword']!=$_POST['password'])
{
$err[]='Your retype password is different than password!';
}

if(!checkEmail($_POST['email']))
{
$err[]='Your email is not valid!';
}

if(!count($err))
{
// If there are no errors

$_POST['email'] = mysql_real_escape_string($_POST['email']);
$_POST['password'] = mysql_real_escape_string($_POST['password']);
$_POST['username'] = mysql_real_escape_string($_POST['username']);
$_POST['firstname'] = mysql_real_escape_string($_POST['firstname']);
$_POST['lastname'] = mysql_real_escape_string($_POST['lastname']);
$_POST['type'] = mysql_real_escape_string($_POST['type']);
// Escape the input data


mysql_query(" INSERT INTO tz_members(firstname,lastname,user,password,email,type,dt)
VALUES('".$_POST['firstname']."','".$_POST['lastname']."','".$_POST['username']."','".md5($_POST['password'])."','".$_POST['email']."','".$_POST['type']."',NOW())");


if(mysql_affected_rows($link)==1)
{
send_mail( 'name@yourdomain.com',
$_POST['email'],
'Registration for Demo',
'Your username is: '.$username.'\n Your password is: '.$password);

$_SESSION['msg']['reg-success']='We sent you an email with your login data!';
}
else $err[]='This username is already taken!';
}

if(count($err))
{
$_SESSION['msg']['reg-err'] = implode('<br />',$err);
}

header("Location: demo.php");
exit;
}

$script = '';

if($_SESSION['msg'])
{
// The script below shows the sliding panel on page load

$script = '
<script type="text/javascript">

$(function(){

$("div#panel").show();
$("#toggle a").toggle();
});

</script>';

}
?>
8  Programación / PHP / Algun ejemplo de una pagina de perfil de usuarios? en: 27 Enero 2010, 17:37 pm
Hola! Queria preguntar si alguno de ustedes no tiene un ejemplo sobre cómo hacer una página de perfil de usuarios, o sea que cuando el usuario inicie sesión sea redirigido a un perfil que deba completar.

Alguna sugerencia?


Gracias


den_22
9  Programación / PHP / Contraseña cifrada con MD5 en: 25 Enero 2010, 16:29 pm
Hola nuevamente. Tengo una duda con respecto a la cifrado con md5. Donde deberia poner el
Código:
$contrasena = md5($contrasena);

Este es el registro.php

Código:
<?php
// Configura los datos de tu cuenta
$dbhost='localhost';
$dbusername='username';
$dbuserpass='password';
$dbname='database';
// Conexi&oacute;n a la base de datos
mysql_connect("localhost", "username","password" ) or die(mysql_error());
mysql_select_db("database" ) or die(mysql_error());

// Preguntaremos si se han enviado ya las variables necesarias
if (isset($_POST["username"] ) ) {
$username = $_POST["username"];
$password = $_POST["password"];
$cpassword = $_POST["cpassword"];
$email = $_POST["email"];
// Hay campos en blanco
if($username==NULL|$password==NULL|$cpassword==NULL|$email==NULL) {
echo "Hay Campos Vacios";
}else{
// &iquest;Coinciden las contrase&ntilde;as?
if($password!=$cpassword) {
echo "Las Contrase&ntilde;as No Coinciden";
}else{
// Comprobamos si el nombre de usuario o la cuenta de correo ya exist&iacute;an
$checkuser = mysql_query("SELECT username FROM users WHERE username='$username'" ) ;
$username_exist = mysql_num_rows($checkuser);

$checkemail = mysql_query("SELECT email FROM users WHERE email='$email'" ) ;
$email_exist = mysql_num_rows($checkemail);

if ($email_exist>0|$username_exist>0) {
echo "EL Nombre de Usuario o la Cuenta de Correo Estan ya en Uso";
}else{
//Todo parece correcto procedemos con la inserccion
$query = "INSERT INTO users (username, password, email) VALUES('$username','$password','$email')";
mysql_query($query) or die(mysql_error());
echo "El Usuario $username ha Sido Registrado de Manera Satisfactoria. Ahora Puedes Iniciar Session";
}
}
}
}
?>


Y este es el código del entrar.php


Código:
<?php
// Configura los datos de tu cuenta
$dbhost='localhost';
$dbusername='username';
$dbuserpass='password';
$dbname='database';

// Conectar a la base de datos
mysql_connect("localhost", "username","password" ) or die(mysql_error());
mysql_select_db("database" ) or die(mysql_error());

if ($_POST['username'] ) {
//Comprobacion del envio del nombre de usuario y password
$username=$_POST['username'];
$password=$_POST['password'];
if ($password==NULL) {
echo "Debes Escribir el Password";
}else{
$query = mysql_query("SELECT username,password FROM users WHERE username = '$username'" ) or die(mysql_error());
$data = mysql_fetch_array($query);
if($data['password'] != $password) {
echo "Usuario o Contrase&ntilde;a Incorrecto, sino eres Usuario Puedes Registrarte <a href='registro.html'>Aqu&iacute;</a>";
}else{
$query = mysql_query("SELECT username,password FROM users WHERE username = '$username'" ) or die(mysql_error());
$row = mysql_fetch_array($query);
$_SESSION["s_username"] = $row['username'];
echo "<html><head></head><meta HTTP-EQUIV='Refresh' CONTENT='3; URL=bienvenido-usuario-inicio-session.html'><body>Hola ".$_SESSION['s_username']." Te Vamos a Redireccionar a Tu Cuenta</body></html>";
}
}
}
?>


Nos vemos.
10  Programación / PHP / Ayuda con este código en: 24 Enero 2010, 17:49 pm
Hola que tal necesito ayuda, con un código de registro en php, el error que me tira es el siguiente: "Warning: mysql_affected_rows() [function.mysql-affected-rows]: A link to the server could not be established in C:\wamp\www\index.php on line 58"

La linea 58 es esta :

Código:
if(mysql_affected_rows()==1) {

Ahora el código completo:

Código:
<?php
if (isset($_POST['submitted'])) {

    $errors = array ();
        require_once ('mysql_connect.php');
}




if (eregi('^[[:alnum:]\.\'\-]{4,30}$', stripslashes(trim($_POST['username']))) ) {
   
    $user= mysql_real_escape_string($_POST['username']);
    $query="SELECT username FROM users WHERE username = '$user'";
    $result=mysql_query($query);
    $num=mysql_num_rows($result);



   
    if($num> 0) {
        $errors[] = '<font color="red">The username you have chosen has already been taken, please try again.</font>';
    } else {
        $username =mysql_real_escape_string($_POST['username']);
    }
  } else {
        $errors[]='<font color="red">Please provide a valid username between 4 and 30 characters.</font>';
       
        }


if (!eregi('^[a-zA-Z]+[a-zA-Z0-9_-]*@([a-zA-Z0-9]+){1}(\.[a-zA-Z0-9]+)
{1,2}', stripslashes(trim($_POST['email'])) )) {
        $errors[]= '<font color="red">Please provide a valid email adress.</font>';
        } else {
            $email=mysql_real_escape_string($_POST['email']);
       
        }

if(!empty($_POST['password1'])) {
    if($_POST['password1'] != $_POST['password2']){
        $errors[]='<font color="red">The 2 passwords you have entered do not match.</font>';
        } else {
            $password=$_POST['password1'];
        }
    } else {
        $errors[]='<font color ="red">Please provide a password.</font>';
    }


if(empty($errors)) {
            $a=md5(uniqid(rand(),true));
        $query="INSERT INTO users (username, email, password, active) VALUES ('$username','$email', SHA('$password'), '$a')";
       
       
        $result= mysql_query($query);
        }
        if(mysql_affected_rows()==1) {
       
                //Send the E-Mail
               
                $body="Thank you for registering at the User Registration Site.To activate your account, please click on this link:\n\n";
                $body.="http://www.whateveraddressyouwantthere.com/activate.php?x=" . mysql_insert_id() . "&y=$a";
               
                    mail($_POST['email'], 'Registration Confirmation', $body, 'From:contactoweb@writeme.com');
                   
                   
                        //Show thank message
               
                echo '<h3>Thank You!</h3>
               
                You have been registered, you have been sent an e-mail to the address you specified before.Please check your e-mails to activate your
account. ';
                } else {
               
                    echo '<font color="red">You could not be registered, please contact us about the problem and we will fix it as soon as we can.</font>';

    }
   

?>
<html>
<head>
</head>
<body>
<h3>Register</h3>
<form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
<p><input type="text" name="username" value="<?php if (isset($_POST['username'])) echo $_POST['username']; ?>" size="30" maxlenght="30" />
<small>Username</small></p>
<p><input type="password" name="password1" size="30" maxlenght="40" />
<small>Password</small></p>
<p><input type="password" name="password2" size="30" maxlenght="40" />
<small>Confirm Password</small></p>

<p><input type="text" name="email" size="30" maxlenght="30" value="<?php if(isset($_POST['mail'])) { echo $_POST['mail']; } ?>" /> <small> Email Address</small></p>

<p><input type="submit" name="submit" value="Register" /></p>
<input type="hidden" name="submitted" value="TRUE" />

</form>
</body>
</html>



Gracias de antemano.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines