Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将特定语言的关键字提取到Javascript中_Javascript_Php_Sql_Session - Fatal编程技术网

如何将特定语言的关键字提取到Javascript中

如何将特定语言的关键字提取到Javascript中,javascript,php,sql,session,Javascript,Php,Sql,Session,简介:我使用了session_start()并设置会话变量,英语为$\u session[“lang”]=1(默认语言),越南语为$\u session[“lang”]=2。我检索了网站的关键字,正如您在这里所看到的(我使用SELECT*from words WHERE lang\u id={$\u SESSION['lang']}从数据库中的每个lang\u id表中获取关键字 问题:我如何从用户语言选择表中获取javascript警报或可能的错误消息(英语或越南语)的关键字,方法与php脚本

简介:我使用了
session_start()
并设置会话变量,英语为
$\u session[“lang”]=1
(默认语言),越南语为
$\u session[“lang”]=2
。我检索了网站的关键字,正如您在这里所看到的(我使用
SELECT*from words WHERE lang\u id={$\u SESSION['lang']}
从数据库中的每个
lang\u id
表中获取关键字

问题:我如何从用户语言选择表中获取javascript警报或可能的错误消息(英语或越南语)的关键字,方法与php脚本对我的方式非常相似

注:

  • 我在这里搜索了其他问题,发现他们建议我使用ajax作为桥梁来传递服务器端和客户端脚本的值,但没有给出任何细节(!)

  • 我不是想回显会话变量,只是将与存储在
    $\u会话
    中的lang_id 1或2相关联的关键字仅提取到
    Javascript
    的可能警报或错误消息中

这是我的单词表查询您的信息:

$query = 'CREATE TABLE words (
    word_id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
    lang_id TINYINT UNSIGNED NOT NULL,
    foo VARCHAR(30) NOT NULL,
    bar VARCHAR(30) NOT NULL,
    PRIMARY KEY (word_id),
    UNIQUE (lang_id) ) ENGINE = MYISAM';`

我不完全明白你的问题是什么。你所说的关键词到底是什么意思?这个网站应该展示什么

有两种方法可以将数据输入javascript:要么在交付语言版本时预先构建一个包含上述关键字的表,要么使用AJAX请求来请求指定的单词。对于后者,您必须有某种API/接口可供检索

例如,您可以有一个名为
retrieveword.php
的脚本,它使用get参数来检索单个单词。您已经在会话中设置了语言,因此没有理由将其包含在调用中,但您当然也可以这样做。因此,您的最后一个调用可能如下所示:
retrieveword.php?lang=1&word=5
并将提供一个简单的JSON响应,如
{“foo”:“something”,“bar”:“something”,“wordid”:5,“langid”:1}


或者,您可以在javascript中以JSON的形式将该单词列表烘焙到javascript中,但这取决于表的大小,这可能非常浪费,并且会暴露大量信息。

我不完全理解您的问题所在。您所说的关键字到底是什么意思,该网站应该展示什么

有两种方法可以将数据输入javascript:要么在交付语言版本时预先构建一个包含上述关键字的表,要么使用AJAX请求来请求指定的单词。对于后者,您必须有某种API/接口可供检索

例如,您可以有一个名为
retrieveword.php
的脚本,它使用get参数来检索单个单词。您已经在会话中设置了语言,因此没有理由将其包含在调用中,但您当然也可以这样做。因此,您的最后一个调用可能如下所示:
retrieveword.php?lang=1&word=5
并将提供一个简单的JSON响应,如
{“foo”:“something”,“bar”:“something”,“wordid”:5,“langid”:1}


或者,您可以在交付时将该单词列表作为JSON烘焙到javascript中,但这取决于表的大小,这可能会非常浪费,并且会暴露大量信息。

“foo”被称为关键字,而“bar”则被称为在
words
表中也称为关键字,其中
lang_id
是链接到
languages
表的外键。如果用户选择越南语(lang_id等于#2),则“foo”关键字的值将以越南语返回,反之亦然。特别是谈到我的项目-我的网站-你可以看到关键字
login
被翻译成
'ng nhập'
'register'
如果您将语言转换为越南语,则将成为
'ung ký
。该数据结构似乎有点奇怪,除非您正在进行实际翻译。您如何引用
“register”
代码中的字符串?是按字符串还是按id查找?如何生成警报/错误消息?“foo”称为关键字,而“bar”在
words
表中也称为关键字,其中
lang_id
是链接到
languages
表的外键。如果用户选择越南语(lang_id等于#2),则“foo”关键字的值将以越南语返回,反之亦然。特别是谈到我的项目-我的网站-你可以看到关键字
login
被翻译成
'ng nhập'
'register'
如果您将语言转换为越南语,则将成为
'ung ký
。该数据结构似乎有点奇怪,除非您正在进行实际翻译。您如何引用
“register”
代码中的字符串?你是通过字符串还是id来查找它的?你如何生成警报/错误的消息?FWIW,英语使用官方语言缩写
'en'
,越南语使用
'vi'
,或者任何其他有意义的非数字单词。不要使用幻数。你会永远搞混的你最终也包括你自己。欢迎来到Stack Overflow!我已经按照SO标准格式化了代码-将你的代码样本缩进4个空格,以便正确呈现-请参阅。还添加了
sql
作为标记-以便更多了解该主题的人可以看到它。祝你好运!FWIW,使用官方语言环境缩写
'en'
表示英语,而
'vi'
表示越南语,或任何其他有意义的非数字单词。不要使用魔法