[英]Update a url link based on user text input and save change in Wordpress
我已经创建了一个Wordpress页面,该页面总而言之可以允许某人发起视频群聊会话。 发起视频群聊会话后,用户可以复制视频群聊网址并将其粘贴到输入框中,然后单击提交。 目的是让页面上更新的链接留给下一个打开页面以供点击并跟随相同视频群聊的用户使用。
我正在使用以下JS函数更新下面列出的html部分。
<script type="text/javascript">
function updatelink(){
var userInput = document.getElementById('userInput').value;
var lnk = document.getElementById('lnk');
lnk.href = userInput;
lnk.innerHTML = lnk.href;
}
</script>
这是调用该函数并进行更新的html。
Connect to Hangout Here : <a href="" id=lnk>nothing here yet</a> <br>
<input type='text' id='userInput' value='Enter Hangout Link Here' />
<input type='button' onclick='updatelink()' value='Change Link'/>
这样可以将页面上的链接更新为用户输入。 我遇到的问题是刷新页面时不会保存。 当我需要它时,它将重置,直到它再次更新为止。
任何帮助,将不胜感激。 我是一个初学者,所以描述性越强越好。
谢谢。
<input type='text' id='userInput' name='urlhang' value='Enter Hangout Link Here' />
SESSION['urlhang'] = $_POST['urlhang'];
您可以创建该值的会话,并在要更新该值时重置会话。
也许这种逻辑可以解决您的问题。 因此您可以直接在SESSION ['urlhang']中获取该值,直到对其进行更新。
我发现最好使用MySQL更新链接并将其存储在表中。
到目前为止,我已经使用以下代码实现了从数据库中提取lnk的操作:
extract(shortcode_atts(array('arg' => 'default'), $atts));
// Connects to your Database
mysql_connect("localhost", "user", "password") or die(mysql_error());
mysql_select_db("my_db") or die(mysql_error());
$data = mysql_query("SELECT * FROM lnk")
or die(mysql_error());
while($info = mysql_fetch_array( $data ))
{
return "".$info['lnk']."";
}
第一行是为wordpress创建一个简码。 我访问此php脚本的html如下:
<button onclick="openWin()" name="hangout1">Join/Create Room</button>
<script type="text/javascript">// <![CDATA[
function openWin() { window.open(lnk,"_blank","toolbar=0, scrollbars=0, resizable=yes, top=-100, left=0, width=800, height=800"); }
// ]]></script>
<a id="lnk" href=[connectserver]></a>
[ connectserver ]是php短代码参考。
我必须更新数据库中链接的代码如下:
extract(shortcode_atts(array('link' => 'default'), $atts));
// Connects to your Database
$con=mysqli_connect("localhost","username","password","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_query($con,"UPDATE lnk SET lnk='"$atts"'");
mysqli_close($con);
以下脚本用于通过上面的php短代码将新链接(用户输入)提交到数据库。 (当手动运行php时,我可以更改lnk ='“ $ atts”'“);部分更改为所需的变量,例如... lnk ='www.yourwebsite.com'”); 并且可以正常工作。)(请参见下面的其他无效代码。)
<input id="userInput" type="text" value="Enter Hangout Link Here" />
<input onclick="[updatelnk link=userinput]" type="button" value="Change Link" />
我不知道如何通过用户输入将新链接传递给简码。 有人对此有答案吗?
感谢您的回答Dipak,但我是新手,并且没有使用javascript的经验。 我抬头开始了一个会话,但我认为数据库选项可能是更好的途径。 如果我错了,请告诉我。
肯
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.