簡體   English   中英

在table_name內的列內編輯列?

[英]Edit column inside column inside table_name?

所以我需要幫助,我正在創建一個游戲,並且sql列表創建了用戶名和密碼,我想將木材,石材,鋼材數據以正確的用戶名存儲到數據庫中,但是我不知道如何。

數據庫

就像這樣,但我知道的唯一代碼是:

mysql_query("UPDATE table_name SET column = newdata");

但是這里有一個錯誤,它不會創建它,因為沒有這樣的名為column的列,我需要它來搜索用戶名,然后將木材數據插入到木材數據空間中。

<?php
mysql_connect("localhost","username","password") or die(mysql_error()); 
mysql_select_db("database") or die(mysql_error()); 

$wood= "document.getElementById('wood').value";
$stone= "document.getElementById('stone').value";
$steel= "document.getElementById('steel').value";

mysql_query("UPDATE `members` SET `wood` = $wood WHERE `username`=$myusername");
mysql_query("UPDATE `members` SET `stone` = $stone WHERE `username`=$myusername");
mysql_query("UPDATE `members` SET `steel` = $steel WHERE `username`=$myusername");
?>

試試下面的代碼:

mysql_query("UPDATE `table_name` SET `wood` = 12 WHERE `id`=1");

不要將用戶信息和元數據混合在一個表中。 您可以通過分成兩個表來分隔用戶名/密碼和其他信息。

CREATE TABLE `users` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `name` varchar(50) NOT NULL,
 `password` varchar(255) NOT NULL,
 `active` enum('0','1') NOT NULL DEFAULT '1',
 PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


CREATE TABLE `data` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `user_id` int(10) unsigned NOT NULL,
 `wood` int(10) NOT NULL,
 `stone` int(10) NOT NULL,
 `steel` int(10) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

那你就可以

$wood = mysql_real_escape_string( 'wood info' );
$stone = mysql_real_escape_string( 'stone info' );
$steel = mysql_real_escape_string( 'steel info' );
$userid = 'ID of the user against which you want to update.';

mysql_query("UPDATE `data` SET `wood`=$wood, `stone`=$stone, `steel`=$steel WHERE `user_id`=$userid;");

希望能有所幫助。

使用此代碼:

mysql_query("UPDATE `table_name` SET `wood` = 12 WHERE `username`='user'");

暫無
暫無

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

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