> Faqs > Consulta a Base de Datos y envio de e-mail

Consulta a Base de Datos y envio de e-mail

Hola. Soy nuevo en el desarrollo web en html, php y mysql. Hice un curso hace poco de los dos ultimos, pero muy basico. Resulta que tengo una base de datos Meil, que posee los integrantes del grupo de trabajo y estan los datos de cada uno y su correo. He realizado un programa en php que consulta el e-mail segun su apodo, y lo vuelco a una variable, pero al momento de enviar el correo no lo hace porque no reconoce la variable en si (obvio que tampoco su contenido). Si pueden ayudarme que me esta cansando.... Aclaro que el envio esta como texto, porque quiero verificar que me tome los datos primero. Asimismo, en algunos casos toma solo uno. Gracias

<?php
require 'conexion.php';
	$fecha   = $_POST['fecha'];
    $de      = $_POST['de'];
	$para    = $_POST['para'];
	$tema    = $_POST['tema'];
	$resumen = $_POST['resumen'];
	$quien   = $_POST['quien'];
	$resuel  = $_POST['resuel'];


	$sql = "INSERT INTO comunica (fecha, de, para, tema, resumen)
            VALUES ('$fecha', '$de', '$para', '$tema', '$resumen')";
	
    $resultado = $mysqli->query($sql);
    
    $mysqli = new mysqli("localhost", "rafael", "martinja", "esi");
        
    $query="SELECT id_mai, apellido, oficina, mail, apodo FROM imeil where apodo=$para" ;
 
    $resultado = $mysqli->query($query);
    
    $cuerpo="De: ".$de."\r\n"."Tema: ".$tema."\r\n"."Mensaje: ".$resumen ;
 
/*    $responder="From: $apellido $oficina <$mail>"; */

    echo "Id:                 ".id_mai."<br/>";

    echo "Apellido y Nombres: ".$ape."<br/>";

    echo "Oficina:            ".$ofi."<br/>";

    echo "E-Mail:             ".$mai."<br/>";

    echo "Apodo:              ".$apo."<br/>";

    echo "Tema:               ".$tema."<br/>";

    echo "Mensaje:            ".$resumen."<br/>";
        
/*    @mail('mail', $tema, $cuerpo, $responder) ; */

/*    header("Location: ingrecom.php?env=Ok#registrese");*/

?>

Respuestas

Parece que no está completo tu código.

Después de hacer una selección de la base de datos

$query="SELECT id_mai, apellido, oficina, mail, apodo FROM imeil where apodo=$para" ;

Luego ejecutas la consulta.

$resultado = $mysqli->query($query);

Hasta ahí todo bien. Lo que pasa es que a continuación tienes que hacer un bucle para recoger cada uno de los registros que hay en tu consulta, porque una consulta select siempre devuelve un conjunto de registros que debes de recorrer y operar para cada uno.

Típicamente haces eso con un bucle while en el que vas iterando con cada uno de los elementos, que recibes mediante fectch_assoc() o fetch_array().

while ($fila = $resultado->fetch_assoc()) {
    echo fila['apodo'];
}

Además en tu código estás accediendo luego a variables que no has asignado nunca como $apo $mai, etc. Se supone que esas son las variables que tendrás que sacar $fila['apodo'] $fila['mail'], etc.

Julian
1147 49 87 46
Julian, Muchas Gracias.