Моя страница PHP не работает. Это абсолютно пусто

Я работаю над сайтом, чтобы обмениваться названиями песен, и я сделал форму рекомендации, которую я включаю в каждую страницу. Эта форма рекомендаций представлена ​​в формате HTML и ведет на страницу действий PHP, где полученная информация добавляется в таблицу SQL. Вот код:

<?php

ob_start();
$host="localhost"; // Host name 
$username="root"; // Mysql username 
$password="MYPASSWORD"; // Mysql password 
$db_name="DB NAME"; // Database name 
$tbl_name="songshare"; // Table name 

// Connect to server and select databse.
$link = mysqli_connect("$host", "$username", "$password")or die("cannot connect"); 
mysqli_select_db($link, "$db_name")or die("cannot select DB");

// Define $myusername and $mypassword 
$song=$_POST['song']; 
$album=$_POST['album']; 
$artist=$_POST['artist'];
$linkitunes=$_POST['linkitunes'];
$artwork=$_POST['albumPic'];

// To protect MySQL injection (more detail about MySQL injection)
$song = stripslashes($song);
$album = stripslashes($album);
$artist = stripslashes($artist);
$song = mysqli_real_escape_string($link, $song);
$album = mysqli_real_escape_string($link, $album);
$artist = mysqli_real_escape_string($link, $artist);

$sql="SELECT * FROM $tbl_name WHERE song='$song'";
$result=mysqli_query($link, $sql);
if ($result->num_rows){
  echo "Song already taken" . "<br />";
  echo "<a href='/music.php'>music</a>";
  exit();
}

$sql="INSERT INTO recommendation (user_id, artist, song, album, artwork, linkitunes)";
$sql = $sql . " VALUES ('$_SESSION['user_id']', '$artist', '$song', '$album'. '$artwork'. '$linkitunes');";
$result=mysqli_query($link, $sql);

if(!$result) {
   echo "Recommendation failed" . "<br />";
   echo $sql;
} else {
    print "$song, $artist, $album";
}
ob_end_flush();

?>

Я проверил, что каждое имя пользователя, пароль, ссылка верны и действительны. Мой сервер на самом деле работает PHP. Мне кажется, что PHP-код даже не работает.

Огромное спасибо заранее.

-Cameron

4 ответа

Вместо '$album'. '$artwork'. '$linkitunes' Делать: '$album', '$artwork', '$linkitunes', сохраняя данные.

Попробуй это:-

$sql = $sql . " VALUES ('".$_SESSION['user_id']."', '$artist', '$song', '$album', '$artwork', '$linkitunes')";

вместо

$sql = $sql . " VALUES ('$_SESSION['user_id']', '$artist', '$song', '$album'. '$artwork'. '$linkitunes');";

Включите отчеты об ошибках, добавив это в верхней части страницы:

ini_set("display_errors",true);

и измените эту строку:

$link = mysqli_connect("$host", "$username", "$password")

в

$link = mysqli_connect($host, $username, $password,$db_name);

Посмотрите пожалуйста как работать с mysqli

Вам следует проверить версию локального сервера, с которой вы работаете. Если вы работаете с локальным сервером более высокого уровня и ваш php был написан в более низкой версии, отображается пустая страница.

Другие вопросы по тегам