У меня есть один файл под названием showRelayTeams.php, а другой под названием databaseSELECTOperation.php
Я пытаюсь поместить тот, у которого есть функция базы данных, в тот, который называется showRelayTeams.php
showRelayTeam.php
<?php
$House = $_GET['q'];
$Data = "No Data";
$Query = "SELECT Firstname, Lastname, AgeGroup, Event, Value FROM tblEventEntries WHERE House = '" . $House . "' ORDER BY Value ASC;";
require("http://127.0.0.1/phpscripts/databaseOperations.php");
$Data = databaseSELECTOperation($Query);
$Counter = 0;
if (mysqli_num_rows($Data) > 0) {
echo "<table>";
echo "<tr>";
echo "<th>Name</th>";
echo "<th>Age Group</th>";
echo "<th>Event</th>";
echo "<th>Time</th>";
echo "<th>Select?</th>";
echo "</tr>";
while ($Row = mysqli_fetch_assoc($Data)) {
$Counter++;
echo "<tr>";
echo "<td>" . $Row["Firstname"] . " " . $Row["Lastname"] . "</td>";
echo "<td>" . $Row["AgeGroup"] . "</td>";
echo "<td>" . $Row["Event"] . "</td>";
echo "<td>" . $Row["Value"] . "</td>";
echo "<td><input type='checkbox' id='" . $Counter . "'
onclick='boxChecked(this.id)'></td>";
echo "</tr>";
}
}
echo "</table>";
?>
databaseSELECTOperation.php
<?php
//use the SQL SELECT command and return the data
function databaseSELECTOperation($Query) {
//this file will include the host, username, password and the database name
include "http://127.0.0.1/includes/variables.php";
//start a connection to the database using the credentials
$Connection = mysqli_connect($DatabaseHost, $Username, $Password, $DatabaseName);
//if the connection to the database was not successfully made then
if (!$Connection) {
//end the script and then print an error
die("Could not connect to the database: " . mysqli_error());
} //end if
//run the query and put the data returned in to a variable
$DataReturned = mysqli_query($Connection, $Query);
//return the data to the script that called it
return $DataReturned;
}
?>
Я получаю следующую ошибку:
Fatal error: Uncaught Error: Call to undefined function databaseSELECTOperation()
Когда я вставляю следующий код сразу после оператора require, я получаю
function not found
<?php
if (function_exists('databaseSELECTOperation')) {
echo "function found.<br />\n";
} else {
echo "function not found<br />\n";
}
?>
Есть идеи, как это решить?
Вы включаете страницу HTTP в требовать(). Измените его на требуется ("databaseOperations.php");.
Файл - databaseOperations.php или databaseSELECTOperation.php?
@ErnaniAzevedo Спасибо, что решил это
@aynber Спасибо, что решил.
@GrumpyCrouton, поскольку это поле выбора, разве это не означает, что пользователь не может вставить что-либо, что было бы безопасно, но я не прочитаю другие текстовые поля на веб-сайте, спасибо
@SammySimpson Это неверное предположение, я могу перейти на любой веб-сайт, который захочу, щелкнуть правой кнопкой мыши любой выбранный элемент и нажать «Проверить элемент», и я могу изменить любое значение на все, что захочу.
@GrumpyCrouton, вы хорошо замечаете, спасибо за помощь
@SammySimpson Нет проблем :)






Это ошибка:
require("http://127.0.0.1/phpscripts/databaseOperations.php");
Когда вы обращаетесь к файлу через URL-адрес, он включает вывод, который уже обработан веб-сервером, в то время как вам необходимо включить исходный код PHP.
Вместо этого вам нужно указать путь к файлу в файловой системе, как в следующих примерах:
require('../phpscripts/databaseOperations.php');
require('/var/www/html/phpscripts/databaseOperations.php');
require('C:\inetpub\html\phpscripts\databaseOperations.php');
Вы запрашиваете его через http, поэтому он получит проанализированный ответ с этой страницы, а не код. Вместо этого попробуйте использовать абсолютный путь к файлу.