Javascript 未选择语言时,如何获取错误消息?

Javascript 未选择语言时,如何获取错误消息?,javascript,php,jquery,mysql,Javascript,Php,Jquery,Mysql,我有一个网站,它的功能是将字幕从一种语言翻译成另一种语言,翻译是使用谷歌widget工具完成的,图像上用红色标记:(正如你在左边看到的,它在谷歌widget工具上写着“选择语言”) 还有一个选项,用户可以将翻译后的字幕文件保存到数据库中,并将用户翻译字幕时使用的语言自动保存到数据库中,现在,许多用户不知道如何使用此选项,因此他们不选择翻译字幕的语言,只需将此选项保留在google widget tool“选择语言” 我需要一些函数/代码,以便在未选择语言时不会执行任何操作。 如果他没有通过goo

我有一个网站,它的功能是将字幕从一种语言翻译成另一种语言,翻译是使用谷歌widget工具完成的,图像上用红色标记:(正如你在左边看到的,它在谷歌widget工具上写着“选择语言”)

还有一个选项,用户可以将翻译后的字幕文件保存到数据库中,并将用户翻译字幕时使用的语言自动保存到数据库中,现在,许多用户不知道如何使用此选项,因此他们不选择翻译字幕的语言,只需将此选项保留在google widget tool
“选择语言”

我需要一些函数/代码,以便在未选择语言时不会执行任何操作。

如果他没有通过google widget工具选择一种语言,并试图在数据库中保存字幕,则会出现“请在保存字幕之前选择一种语言”的消息

这个php脚本用于将字幕保存到数据库中,现在我应该在这个脚本中添加哪个函数/代码

$data =  $_POST['data'];
$file_name =  $_POST['xxx'];
$subtitle =  $_POST['xxx'];
$language =  $_POST['xxx'];
$author =  $_POST['xxx'];
$ip= $_SERVER['REMOTE_ADDR'];
if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) {
    $ip = array_pop(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']));
}


$data =json_decode($data, true);

foreach($data as $obj){

    $subtitles1->add($obj['start'], $obj['end'],$obj['text']);
    $subtitles1->save($file_name);
}
$ext = pathinfo($file_name, PATHINFO_EXTENSION);

$new_file_name_ext = time()."_".$sub."_".$lan.".".$ext;
$new_file_name = time()."_".$sub."_".$lan;
$sql_lan = "SELECT code FROM lan_code WHERE language ='$lan'";
$result_lan = mysqli_query($conn, $sql_lan);
if (mysqli_num_rows($result_lan) > 0) {
    while($row = mysqli_fetch_array($result_lan)){
        $lan_code = $row['code'];
    }
}else{
    $lan_code = $lan;
}
$sub_new = $sub.'_'.$lan_code;
$sql = "SELECT * FROM table WHERE name ='$sub_new'";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
    $data1 = "Unable to save subtitle, subtitle already exists with the same language in the database.";
}
else{
    $query1 = "INSERT INTO table (xxx , xxx, xxx, xxx, ip)
            VALUES ('$sub_new','$authors', '$lan', '$new_file_name', '$ip')";
    if(mysqli_query($conn, $query1)){
        copy("$file_name", "uploads/$new_file_name_ext");
        //new GoodZipArchive('uploads/$new_file_name',    'upload/output_zip_file.zip') ;
        $data1 = "Successful, File saved to database.";

        $zip = new ZipArchive;
        $new_zip = time()."_".$subtitles."_".$languages.".zip";
        if ($zip->open("uploadsk/$new_zip", ZipArchive::CREATE) === TRUE)
        {
            $zip->addFile("uploads/$new_file_name_ext", "$new_file_name_ext");
            $zip->close();
        }
    } else{
        $data1 = mysqli_error();
    }
}

echo $data1; ?>

如果希望在未选择任何语言时弹出消息,则需要使用Javascript

您可以非常简单地使用javascript alert()函数,如下所示:

echo '<script type="text/javascript">';
if(empty($language) or !isset($language)){
    echo 'alert("please select a language")';
}else{
   ...add the rest of your code here.
}
echo '</script>';
echo';
if(空($language)或!isset($language)){
回显“警报”(“请选择一种语言”);
}否则{
…在此处添加其余代码。
}
回声';
但这会导致非常糟糕的输出。如果你想要更漂亮的东西,你可以使用像sweetAlert这样的插件。它非常容易使用,比简单地“提醒”你的信息要好得多。你可以看看sweetAlert


祝你好运

在SQL查询中,
$lan
的定义在哪里?还是
$language
?是的,是$language,先生!这导致“您的代码的其余部分”在脚本元素之间输出..嗨,Peyu,您能将代码插入到我的脚本中吗?我可以完成代码(我不想弄乱什么东西)?感谢you@iccube,这是因为您正在复制和粘贴。这个答案显示了一个可能的解决方案,但您必须自己理解代码。@Angel666我现在没有apache服务器(我也没有您所有的代码)来测试一个功能完整的代码。试着自己做,如果你发现任何问题,再问我一次。我会尽力回答任何问题。顺致敬意,