我想在我的数据库中存储youtube视频ID和名称,但在管理页面上,我只想在表单中发送视频链接。
我尝试了这个,但它不起作用。我只是在学习如何使用一个函数。你能帮帮我吗?
if (isset($_POST['sendit'])){
$y_video = $_POST['video'];
function video_add($y_video){
$video=explode("=", $y_video);
$code = explode("&",$video[1]);
$video_feed = file_get_contents("http://gdata.youtube.com/feeds/api/videos?v=2&q=".$video[1]."&max-results=1&fields=entry(title)&prettyprint=true");
$video_obj = simplexml_load_string($video_feed);
$video_str = $video_obj->entry->title;
$sql="INSERT INTO youtube ('y_vid','y_nev')
VALUES('".$code[0]."','".mysql_real_escape_string($video_str)."')";
mysql_query($sql);
header("Location:video-list.php");
}
}
答案 0 :(得分:1)
您已创建该功能,但您没有调用它。您应该编辑代码看起来像这样:
<?
function video_add($y_video){
$video=explode("=", $y_video);
$code = explode("&",$video[1]);
$video_feed = file_get_contents("http://gdata.youtube.com/feeds/api/videos?v=2&q=".$video[1]."&max-results=1&fields=entry(title)&prettyprint=true");
$video_obj = simplexml_load_string($video_feed);
$video_str = $video_obj->entry->title;
$sql="INSERT INTO youtube ('y_vid','y_nev')
VALUES('".$code[0]."','".mysql_real_escape_string($video_str)."')";
mysql_query($sql);
header("Location:video-list.php");
}
if (isset($_POST['sendit'])) video_add($_POST['video']);
?>
所以基本上,你首先要创建这个函数(你可以将它放在一个其他文件中,如果你需要在多个地方,你将在后面包含它),然后用你收到的数据调用它。
此外,您缺少连接数据(或者您可能故意省略这些数据)。
同样不要使用mysql_ *,因为它们已被弃用。使用mysqli_ *或PDO 。请点击http://php.net/mysql_query
了解更多信息