Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Como asignar una variable a un resultado, para enviarlo

Estas en el tema de Como asignar una variable a un resultado, para enviarlo en el foro de PHP en Foros del Web. Hola, tengo un problema y es que no logro como hacer que en una lista donde tengo todos los datos guardados en sql generarle a ...
  #1 (permalink)  
Antiguo 11/04/2015, 15:18
 
Fecha de Ingreso: abril-2015
Mensajes: 7
Antigüedad: 8 años, 11 meses
Puntos: 0
Exclamación Como asignar una variable a un resultado, para enviarlo

Hola, tengo un problema y es que no logro como hacer que en una lista donde tengo todos los datos guardados en sql generarle a cada valor que al darle clic me habra otra pagina solo con ese valor.
Este es el codigo que jala todas las variables
<?php
include 'coneccion.php';

$sql = "SELECT id, nombre FROM nombres";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo " id: " . $row["id"]. " - Name: " . $row["nombres"]. " ";
}
} else {
echo "";
}
$conn->close();


Creo q al echo con los resultados deberia convertirlo en boton y asignarle un onClick que envie los datos del boton hacia otra pag php que genere una busqueda total con los datos que recibio asi me muestre el resto de las caracteristicas, pero recalco no se aun como enviar el valor
  #2 (permalink)  
Antiguo 11/04/2015, 15:28
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.551
Antigüedad: 12 años, 4 meses
Puntos: 977
Respuesta: Como asignar una variable a un resultado, para enviarlo

Bienvenido a FDW.

Como pretendes redirigir al usuario hacia otra página, te conviene usar enlaces.

Código PHP:
Ver original
  1. <?php
  2. while($row = $result->fetch_assoc()){
  3. ?>
  4.     <a href = "tupagina.php?id=<?php echo $row['id']; ?>"><?php echo $row['nombre']; ?></a>
  5. <?php
  6. }
  7. ?>

En el atributo href del enlace, coloco el nombre de la página hacia la cual enviaré el dato, la concateno con un ? para luego colocar un nombre que usaré como variable para enviar el dato en cuestión, luego, realizo la asignación imprimiendo el valor (que en este caso es el id) y eso es todo.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 11/04/2015, 16:12
 
Fecha de Ingreso: abril-2015
Mensajes: 7
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Como asignar una variable a un resultado, para enviarlo

Muchas gracias ya modifique el codigo, sin embargo la probar la pagina en el servidor me genera este error:
Parse error: syntax error, unexpected 'pagina' (T_STRING), expecting ',' or ';' in C:\wamp\www\MiPagina\ht.php on line 122
y no me abre.
El codigo espero y este ubicado bien, lo hice asi:

<?php
include 'coneccion.php';

$sql = "SELECT id, nombre FROM nombres";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {

echo "<a href ="paginap.php?$dato=<?php echo $row['id']; echo $row['nombre']; ?></a>
<?php
}
?>
$conn->close();

?>
  #4 (permalink)  
Antiguo 11/04/2015, 16:18
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 21 años, 11 meses
Puntos: 1284
Respuesta: Como asignar una variable a un resultado, para enviarlo

Hola:

Revisa el entrecomillado (alterna comillas simples y dobles)... si tienes dudas, prueba con la sintaxis heredoc.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 11/04/2015, 17:00
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.551
Antigüedad: 12 años, 4 meses
Puntos: 977
Respuesta: Como asignar una variable a un resultado, para enviarlo

Si deseas enviar dos datos y no uno, debes de añadir el segundo elemento a la query string, concatenándolo con un ampersand:

Un ejemplo:
Código Cadena de consulta:
Ver original
  1. ejemplo.php?variable1=dato1&variable2=dato2

Recuerda que dichos valores serán recibidos mediante el método GET.

Y —como ya te lo dijeron— ten cuidado con las comillas. Fíjate en el pequeño ejemplo que te pasé.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #6 (permalink)  
Antiguo 12/04/2015, 13:42
 
Fecha de Ingreso: abril-2015
Mensajes: 7
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Como asignar una variable a un resultado, para enviarlo

Yaaa miren asi quedo la respuesta:
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {

echo "<a href=paginap.php?var1=". $row["id"]."&var2=". $row["nombre"]."> id: " . $row["id"]. " - Name: " . $row["nombre"]. " <br>";
}
} else {
echo "";
}


$conn->close();

?>
  #7 (permalink)  
Antiguo 12/04/2015, 17:21
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.551
Antigüedad: 12 años, 4 meses
Puntos: 977
Respuesta: Como asignar una variable a un resultado, para enviarlo

Eso no está bien. No estás cerrando la etiqueta </a>.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #8 (permalink)  
Antiguo 12/04/2015, 17:29
 
Fecha de Ingreso: abril-2015
Mensajes: 7
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Como asignar una variable a un resultado, para enviarlo

En HTML no siempre debes cerrar la etiqueta, además que cuando le cerraba me daba error, y asi si me funciona ya lo probé
  #9 (permalink)  
Antiguo 12/04/2015, 17:31
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 6 meses
Puntos: 145
Respuesta: Como asignar una variable a un resultado, para enviarlo

Cita:
Iniciado por jehs_2508 Ver Mensaje
En HTML no siempre debes cerrar la etiqueta
¿Esto es en serio?
__________________
¿Te sirvió la respuesta? Deja un +1
  #10 (permalink)  
Antiguo 12/04/2015, 17:40
(Desactivado)
 
Fecha de Ingreso: abril-2015
Ubicación: España
Mensajes: 616
Antigüedad: 8 años, 11 meses
Puntos: 74
Respuesta: Como asignar una variable a un resultado, para enviarlo

Cita:
Iniciado por NueveReinas Ver Mensaje
¿Esto es en serio?
Poner </li> y </p> es opcional
  #11 (permalink)  
Antiguo 12/04/2015, 17:48
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.551
Antigüedad: 12 años, 4 meses
Puntos: 977
Respuesta: Como asignar una variable a un resultado, para enviarlo

Cita:
Iniciado por jehs_2508 Ver Mensaje
En HTML no siempre debes cerrar la etiqueta...
Cita:
Iniciado por superweb360 Ver Mensaje
Poner </li> y </p> es opcional
FALSO.

Hay etiquetas de autocerrado y otras que no lo son. Las etiquetas <a>, <li> y <p>, entre muchas otras, NO son de autocerrado.

Por favor, consulten un manual antes de comentar cosas como esas.

Cita:
Iniciado por jehs_2508 Ver Mensaje
cuando le cerraba me daba error, y asi si me funciona ya lo probé
Si te sucedía eso, debió haber sido por algo que estabas haciendo mal. El cerrado de la etiqueta es un tema semántico y no tendría por qué afectar negativamente al resultado siempre y cuando hayas hecho bien las cosas.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #12 (permalink)  
Antiguo 12/04/2015, 22:10
 
Fecha de Ingreso: abril-2015
Mensajes: 7
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Como asignar una variable a un resultado, para enviarlo

pfff ya lo eh probado sin cerrarlo y me funciona y no solo en eso, hay una pagina en la que repaso y me da la opción para intentarlo hay e igual me funciona usar la etiqueta <a> sin cerrarla.
http://www.w3schools.com/html/html_elements.asp
  #13 (permalink)  
Antiguo 12/04/2015, 23:14
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.551
Antigüedad: 12 años, 4 meses
Puntos: 977
Respuesta: Como asignar una variable a un resultado, para enviarlo

Si revisas bien el contenido del enlace, verás que en ninguna parte se dice que la etiqueta <a> no deba de cerrarse. Entiende, no debes de dejarla abierta por dos razones:
  1. Semánticamente, no es correcto.
  2. El contenido a la derecha, también será parte del enlace ya que no defines el límite.

E insisto, si dices que no funcionaba, es porque has hecho algo mal. No copies y pegues código sin antes analizarlo y siempre que tengas dudas, consulta un manual.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #14 (permalink)  
Antiguo 13/04/2015, 12:23
 
Fecha de Ingreso: abril-2015
Mensajes: 7
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Como asignar una variable a un resultado, para enviarlo

Insisto que si funciona, ya lo probe, cuando cerraba la etiqueta me generaba como error '/'
por eso decidi no cerrarla, no se define un final, pero a mi parecer como es php lo que engloba se cierra con esos signos, ( } ) por eso no me marca como enlace el resto, y me funciona valga la redundancia,
Si no crees pruebalo, Saludos
  #15 (permalink)  
Antiguo 13/04/2015, 12:29
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.551
Antigüedad: 12 años, 4 meses
Puntos: 977
Respuesta: Como asignar una variable a un resultado, para enviarlo

Una llave de PHP no puede cerrar a un elemento HTML, eso es imposible. Seguramente has tenido algún problema con la forma en como imprimes los enlaces, pero para que no te compliques con eso, puedes imprimirlos como te indiqué en mi primera respuesta.

Nunca olvides que la semántica en la web también es importante.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: javascript, resultado, select, valor, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:02.