0

我使用 MySQL joins 和 PHP 检索了我所有朋友的名字,这些名字目前在线。

现在我想在 JavaScript 中插入他们的名字以便与他们聊天。

<a href="javascript:void(0)" onclick="javascript:chatWith('Friend1')">Friend1 </a>
<a href="javascript:void(0)" onclick="javascript:chatWith('Friend2')">Friend2 </a>

我无法做到这一点。因为我不知道如何在 PHP 中调用 JavaScript,反之亦然。

while($get_usernames=mysql_fetch_array($get_users_query)) {             
    echo '<br>'.$get_usernames['username'];                         
}

我想在 JavaScript 中将每个显示$get_usernames['username']为 Friend1、Friend2

4

3 回答 3

2

您可以使用 AJAX 调用 php 页面并从中获取价值。

调用 php 页面并在查询后使用echo. 您可以responseText在 javascript中使用该值

http://www.tizag.com/ajaxTutorial/ajaxphp.php

于 2013-03-22T14:07:01.523 回答
1

如果你想在 javascript 中放置一些 PHP 变量,一个简单的方法是简单地使用页面内的 php 循环来创建 a 标签。

像这样的东西:

$aTagList = "";
while($get_usernames=mysql_fetch_array($get_users_query)) {             
    $aTagList .= "<a href='javascript:void(0)' onclick='javascript:chatWith(\"".$get_usernames['username']."\")>".$get_usernames['username']."</a>";                         
}

然后使用一些内联代码在页面中任何需要它的地方回显 $aTagList。

<?php echo $aTagList; ?>

不知道我是否得到了所有的转义正确,但它应该给你正确的想法。

于 2013-03-22T14:12:20.160 回答
0

就像是:

<?php
$aUsernames = array();
while($get_usernames=mysql_fetch_array($get_users_query)) {             
    array_push($aUsernames, $get_usernames['username']);                         
}
foreach($aUsernames as $name) {
?>
<a href="javascript:void(0)" onclick="javascript:chatWith('<?php echo $name; ?>')"><?= $name; ?> </a>
<?php
}
?>

使用 AJAX 当然要简洁得多,但是如果它全部在一个 PHP 文件中就足够了。

另外,我想鼓励您迁移到 PDO 或 Mysqli,因为不推荐使用 mysql 函数。

于 2013-03-22T14:13:14.523 回答