簡體   English   中英

PHP:如何從mySQL數據庫中打印值

[英]PHP: How to print value from mySQL database

我正在使用php來計算點擊鏈接的次數。

現在,我想顯示這個數字,但我不確定如何。

數據庫的結構如下:

CREATE TABLE IF NOT EXISTS `count_clicks` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `url` varchar(250) NOT NULL,
  `clicks` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2;

網址存儲在數據庫中,並使用其ID進行調用:

<a href="click.php?id=1">Click me</a>

然后它重定向到網址。

click.php:

// get url details based on ID
$sql = "SELECT * FROM " . $SETTINGS["data_table"] . " WHERE id='" . intval($_REQUEST["id"]) . "'";
$sql_result = mysql_query($sql, $connection) or die('request "Could not execute SQL query" ' . $sql);

// check if ID exists
if (mysql_num_rows($sql_result) > 0) {

    $item = mysql_fetch_assoc($sql_result);

    // increase clicks count by one
    $sql = "UPDATE " . $SETTINGS["data_table"] . " SET clicks=clicks+1 WHERE id='" . intval($_REQUEST["id"]) . "'";
    $sql_result = mysql_query($sql, $connection) or die('request "Could not execute SQL query" ' . $sql);

    header("Location: " . $item["url"]);

} else {
    echo "Item is missing.";
}

它完美地運作。 但是如何創建一個允許我回顯每個鏈接計數的php函數呢? 我想的是一個函數,其中參數是id - 它們將返回計數...

正如我所看到的,當你添加一個計數時,你正在進行重定向,你可以先比較一下是否是一個添加並進行重定向,如果沒有從數據庫中獲取計數器值。 期待它有所幫助

<?php
//new mysql connection
$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password');

//select
$sql = "SELECT clicks FROM count_clicks";
foreach ($pdo->query($sql) as $row) {
   echo "Klicks: ".$row['clicks']."<br />";
}
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM