2016-05-30 9 views
-4

Ich möchte E-Mail-Adresse aus der DB auswählen, um eine E-Mail zu senden. Folgendes ist meine Abfrage, die ich gemacht habe.MYSQL SELECT Abfrage funktioniert nicht

$userID=$_SESSION['userID']; 

$select_query = mysql_query("SELECT * FROM employee WHERE emp_id = '$userID'"); 
$select_sql = mysql_fetch_array($select_query); 
$name=$select_sql['manager_name']; 

$select_query1 = mysql_query("SELECT email FROM employee WHERE employee.name='$name'"); 
$select_sql1 = mysql_fetch_array($select_query1); 
$email=$select_sql1['email']; 

Aber $ select_query1 return "NULL Ungültige Adresse:" anstelle des korrekten Wert. Ich konnte das Problem damit nicht finden. Bitte helfen Sie!

+1

Hallo! Chathurika, Wenn dein Name nicht in der Datenbank gefunden wird, dann wie sie dir Daten gibt ???? Sie sind bereits Ihre E-Mail in der Variablen: '$ select_sql ['email']' –

+0

fügen Sie 'session_start()' Funktion oben auf der Seite hinzu. –

+0

@Chathurika achten Sie auf die Anführungszeichen, '' 'ist nicht der richtige, um die PHP-Werte entsprechend zu analysieren, ich habe den Namen dieses Symbols vergessen – Sherlock

Antwort

1

Sie $_SESSION['userID'] werden auf Basis aller Daten aus der Tabelle einfach employee so zu tun, anstatt zwei Abfragen zu bekommen versuchen, diese

$empID = $_SESSION['userID']; 
$query = mysql_query("SELECT * FROM employee WHERE emp_id=$empID"); 
$result = mysql_fetch_array($query); 
$email = $result['email']; 
+0

Soweit ich das an den Abfragen erkenne, versucht sie in der zweiten Abfrage den Manager der Person von der ersten Abfrage zu bekommen gleiche Ergebnisse genau. Aber 'SELECT E-Mail FROM Mitarbeiter WHERE Mitarbeiter.Name IN (SELECT Manager_Name FROM Mitarbeiter WHERE Emp_ID = $ EmpID)' sollte funktionieren. –

+0

Ich habe auch von diesem Weg, immer noch das Problem – Chathurika

+0

@Chathurika überprüfen Sie bitte Ihre Datenbankverbindung weil Abfrage scheint perfekt. –