2016-06-27 8 views
0

-CodePHP enthalten, während mysql query

$groups = mysqli_query($con, "SELECT * FROM Exten WHERE username='" . $user . "'") or die(mysqli_error($con)); 
while ($rows = mysqli_fetch_array($groups)) { 
    $userindex = mysqli_query($con, "SELECT * FROM Exten WHERE Group1='" . $rows['Group1'] . "''" . include "var/www/html/groups.php" . "'") or die(mysqli_error($con)); 
    while ($row = mysqli_fetch_array($userindex)) { 
    echo "<br>"; 
    echo $row['Index']; 
    } 
} 

Die Ausgangsnachricht ist

Warning: include (var/www/html/groups.php '): failed to open stream: No solche Datei oder Verzeichnis in /var/www/html/login.php on line 38

Warnung: include(): Fehler beim Öffnen von 'var/www/html/groups.php' 'für inclusion (include_path =' .:/usr/share/php 'in /var/www/html/login.php in Zeile 38 Sie haben einen Fehler in Ihrer SQL-Syntax; das Handbuch, dass zu Ihrer MySQL-Server-Version entspricht, die für die richtige Syntax in der Nähe zu verwenden ‚‘ 01 ‚‘‘in Zeile 1

Ich muß meine PHP-Datei zu meiner mysql Abfrage enthalten.

PHP-Datei besteht aus

OR Group2='" . $rows['Group2'] . "' 
OR Group3='" . $rows['Group3'] . "' 
OR Group4='" . $rows['Group4'] . "' 
OR Group5='" . $rows['Group5'] . "' 
OR Group6='" . $rows['Group6'] . "' 
OR Group7='" . $rows['Group7'] . "' 
OR Group8='" . $rows['Group8'] . "' 
OR Group9='" . $rows['Group9'] . "' 
OR Group10='" . $rows['Group10'] . "' 
+0

$ userindex = mysqli_query ($ con, "SELECT * FROM Erweitern WHERE Group1 = '". $ Rows [' Group1 ']. "' '". Include "groups.php". "'") Oder sterben (mysqli_error ($ con)); –

+0

Ich glaube nicht, dass sich include wie eine Funktion verhalten kann, die Daten zurückgibt. Wenn es sich nur um Textinhalt handelt, den Sie zu integrieren versuchen, schlage ich vor, eine Textdatei zu haben und sie mit 'file_get _contents' zu laden. – apokryfos

+0

@apokryfos yes, [it can] (http://php.net/manual/en/function .include.php). _ "Es ist möglich, eine return-Anweisung innerhalb einer eingeschlossenen Datei auszuführen, um die Verarbeitung in dieser Datei zu beenden und zu dem Skript zurückzukehren, das sie aufgerufen hat. Es ist auch möglich, Werte von eingeschlossenen Dateien zurückzugeben. Sie können den Wert des include annehmen Anruf wie Sie für eine normale Funktion "_ –

Antwort

0

Der Dateipfad ist falsch, es muss mit einem Schrägstrich / beginnen zu lesen:
/var/www/html/groups.php

Auch, warum verwenden Sie eine Anweisung innerhalb der Einschluss- MySQL-Abfrage?

+0

Da muss ich etwa 100 Zeichenfolgen OR-Anweisung – Zajev

+0

Nope dasselbe Problem – Zajev

+0

enthalten Der Dateipfad war in der Tat ursprünglich falsch. Wenn Sie immer noch den Fehler 'Stream nicht öffnen' erhalten, müssen Sie sicherstellen, dass Sie über die entsprechenden Berechtigungen zum Lesen dieser Datei verfügen. Können Sie die Berechtigungen sicherstellen?Wenn Sie dieses Skript über den Browser ausführen, müssen Sie sicherstellen, dass diese Datei im Besitz desselben Benutzers ist, der PHP-Skripts ausführt, oder dass er dieselbe Gruppe verwendet. –

-1

Wenn var an der Wurzel ist, dann schreiben Sie es wie include "./var/www/html/groups.php"

$userindex = mysqli_query($con, "SELECT * FROM Exten WHERE Group1='" . $rows['Group1'] . "''" . include "./var/www/html/groups.php" . "'") or die(mysqli_error($con)); 
+0

Nein, gleiches Problem – Zajev

0

Der Dateipfad scheint am Ende ein zusätzliches Apostroph zu haben:

Warning: include(var/www/html/groups.php') 

Was passiert, wenn Sie verwenden:

include ("var/www/html/groups.php") 

oder

include ("/var/www/html/groups.php") 

mit Klammern statt nur Anführungszeichen? Überprüfen Sie auch Ihre Anführungszeichen, sonst könnte Ihre Anfrage brechen.