Почему MYSQL не работает?

Я не знаю почему, но следующий код PHP не работает, но он также не дает мне ошибки.

Mysql уже подключен

$control = 0;
$abfrage = "SELECT * FROM youtuber WHERE username = '$user' AND url = '$url'";
$ergebnis = mysqli_query($verbindung,$abfrage);

while ($row = mysqli_fetch_object($ergebnis))
{
$control++;
}

if ($control != 0){
echo "<p class='text' style='color: red;'>Dieser Youtuber ist bereits eingetragen!";
}
else {
$eintrag = "INSERT INTO youtuber
(username,url)
VALUES
('$user','$url')";

$eintragen = mysqli_query($verbindung,$eintrag);
}

if ($eintragen == true){
echo "<p>Youtuber erfolgreich eingetragen du wirst nun weitergeleitet!</p>";
}
else {
echo "<p class='text' style='color: red;'>Fehler: System:
bitte Kontaktiere einen Administrator!</p>";
}

mysqli_close($verbindung);
}
}

?>

-2

Решение

Как и во всем, если вы можете разбить его на более мелкие кусочки и разбирать их по одному, это поможет вам найти корень проблемы.

Я просмотрел ваш код и поместил в него свои комментарии. Помимо некоторых пропавших скобок, пропавших без вести </p> и потенциальная уязвимость SQL инъекций, что вы делаете, что вы думаете, не должно? Вы должны отладить и / или распечатать запросы в файл журнала, чтобы просмотреть их.

        $control = 0;
$abfrage = "SELECT * FROM youtuber WHERE username = '$user' AND url = '$url'";
// as other answers have pointed out, this kind of query
// is a really bad idea. Think of what happens if $user
// is something like the following:
// ' or true; drop table youtuber; --

$ergebnis = mysqli_query($verbindung,$abfrage);
while ($row = mysqli_fetch_object($ergebnis)) {
$control++;
}

if ($control != 0) {
// if the control variable was incremented (a user exists)
echo "<p class='text' style='color: red;'>Dieser Youtuber ist bereits eingetragen!"; // here you don't close your paragraph element
} else {
// no user was found, create
$eintrag = "INSERT INTO youtuber (username,url) VALUES ('$user','$url')";
$eintragen = mysqli_query($verbindung,$eintrag);
}
if ($eintragen == true){
// the insert query was successful
echo "<p>Youtuber erfolgreich eingetragen du wirst nun weitergeleitet!</p>";
} else {
// the insert query failed
echo "<p class='text' style='color: red;'>Fehler: System: bitte Kontaktiere einen Administrator!</p>";
}

mysqli_close($verbindung);

// trailing braces -- what are these?
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector