[英]Mysql - how to retrieve data from a database(mysql) and print it.(php)
[英]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.