我一直致力于通过YouTube网址获取ID的功能。该功能有效;
Function getYouTubeID($URL){
$YouTubeCheck = preg_match('![?&]{1}v=([^&]+)!', $URL . '&', $Data);
If($YouTubeCheck){
$VideoID = $Data[1];
Echo $VideoID;
}
}
唯一不适合我的部分是我试图在表单提交时调用它;
<form action="<?php If(IsSet($_POST['submit'])){
If(!$_POST['video_id'] == NULL){
$VideoID = getYouTubeID($_POST['video_url']);
Header('Location: /watch?v='.$VideoID); }} ?>" method="POST">
我可以在它自己的文件中调用该函数(test.php);
Function getYouTubeID($URL){
$YouTubeCheck = preg_match('![?&]{1}v=([^&]+)!', $URL . '&', $Data);
If($YouTubeCheck){
$VideoID = $Data[1];
Echo $VideoID;
}
}
getYouTubeID('http://www.youtube.com/watch?v=example');
然而,如前所述,我不能通过表单提交,甚至尝试包含它(包括'filewiththefunction.php')来调用它。
非常感谢任何帮助,感谢您的时间。
答案 0 :(得分:2)
如果在表单操作中检查POST的条件不会执行任何操作,那么您应该执行以下操作:
基本示例
form action="someting.php">
<input type="text" name="video_url" value="" />
<input type="submit" name="Show" value="Show" />
</form>
然后在 something.php
<?php
if(isset($_POST['submit'])){
$VideoID = getYouTubeID($_POST['video_url']);
header('Location: /watch?v='.$VideoID);
}
?>