在PHP页面链接中附加HTML元素的值

时间:2017-06-26 23:54:14

标签: javascript php html

我有一个HTML文件如下:

<html>

<body>
  <div id="container">
    <section>
      <article id="news-card">
        <div id='identity'>011</div>
        <h1>HEADLINE</h1>
        <p>AUTHOR</p>
        <a href='#' class='readmore'>Read more</a>
        <form action='postnews.php' method='post'>
          <input type='checkbox' name='bookmark'>Bookmark?</input>
        </form>
      </article>
      <section>
  </div>
</body>

</html>

这里是PHP文件:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "News-Articles";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

$_bookmark = isset($_POST["bookmark"]) ? 'Y' : 'N';
$sql =     "INSERT INTO stats (iid, bookmark, readmore, counter)
           VALUES ('$_iid', '$_bookmark', NULL, NULL)
           ON DUPLICATE KEY UPDATE
           bookmark = '$_bookmark';"
mysqli_query($conn, $update);
mysqli_close($conn);
?>

我想要包含id =&#39; identity&#39;的元素的值。进入表格的动作属性。像这样:

<form action = "postnews.php?iid=getElementById(identity).innerHTML">

因此,在PHP文件中,我可以$_GET["iid"]为该特定iid插入书签的值。我该如何处理解决方案?

3 个答案:

答案 0 :(得分:2)

您只需将iid = value添加到表单提交时的操作即可。我付了一张支票?因此,如果操作已经有一个查询字符串,则只需将iid附加到它。

&#13;
&#13;
var theForm = document.getElementById('bookmark-form');
theForm.addEventListener('submit', changeAction, false);

function changeAction(event)
{
  event = event || window.event;

  var form = event.target;
  var idDiv = document.getElementById('identity');
  var idToAdd = idDiv.innerHTML;
  var action = form.action;

  if (action.indexOf('?') === -1) {
    form.action = action + '?iid=' + idToAdd;
  } else {
    form.action = action + '&iid=' + idToAdd;
  }

  event.preventDefault();

  console.log(form.action);
}
&#13;
<html>

<body>
  <div id="container">
    <section>
      <article id="news-card">
        <div id='identity'>011</div>
        <h1>HEADLINE</h1>
        <p>AUTHOR</p>
        <a href='#' class='readmore'>Read more</a>
        <form action='postnews.php' method='post' id="bookmark-form">
          <input type='checkbox' name='bookmark'>Bookmark?</input>
          <input type='submit' value='Submit'>
        </form>
      </article>
      <section>
  </div>
</body>

</html>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

您可以包含隐藏的输入字段。

<input type='hidden' name='iid' value="<?php echo $iid; ?>" >

这将使其在您的$ _POST变量中可用,例如$_POST['iid']

答案 2 :(得分:0)

<html>
<body>
    <div id="container">
        <section>
            <article id="news-card">
                <div id='identity'>011</div>
                <h1>HEADLINE</h1>
                <p>AUTHOR</p>
                <a href='#' class='readmore'>Read more</a>
                <form action='' method='post' id='postNewsForm'>
                    <input type='checkbox' name='bookmark'>Bookmark?</input>
                </form>
            </article>
        </section>
    </div>

    <script>
       var x = document.getElementById("identity").innerHTML;
       var y = "postnews.php?iid=" + x;     
       document.postNewsForm.action = y;
    </script>
</body>
</html>