我写了一个非常简单的函数:
function editCategory() {
$ID = urlencode($_GET['id']);
$cname = mysql_fix_string($_POST['cname']);
$kabst = mysql_fix_string($_POST['kabst']);
$kselect = $_POST['kselect'];
$subsl = $_POST['subsl'];
$kradio = $_POST['kradio'];
$ksubmit = $_POST['ksubmit'];
if (isset($ksubmit)) {
$query = "UPDATE category SET name = '$cname', description = '$kabst', published = '$kselect', home = '$kradio', subcat = '$subsl' WHERE id = $ID ";
$result = mysql_query($query);
if (mysql_affected_rows () == 1) {
echo "ok";
}
else{
echo mysql_error();
}
}
}
function mysql_fix_string($string)
{
if (get_magic_quotes_gpc())
$string = stripslashes(($string));
return …Run Code Online (Sandbox Code Playgroud) 我正在使用最新的MySQL.
我有两张桌子:backlinks和pages.
我正在尝试更新cache_links表中pages为某个网址调用的列.该列应该等于backlinkswhere destination=中的行数url.
我可以用我的应用程序语言这样做,以防我的意思不明确:
$myURL = "http://google.com/";
$numLinksResult = mysqli_query($c, "SELECT count(*) AS `num` FROM `backlinks` WHERE `same_domain` = FALSE AND `url` = '$myURL'");
$numLinksRow = mysqli_fetch_assoc($numLinksResult);
$numLinks = $numLinksRow['num'];
mysqli_query($c, "UPDATE `pages` SET `links` = $numLinks WHERE `url` = '$myURL'");
Run Code Online (Sandbox Code Playgroud)
我一直在尝试构建的查询看起来像这样:
UPDATE `pages`, `backlinks` SET pages.`cache_links` = backlinks.count(*)
WHERE backlinks.`destination` = pages.`url`
AND backlinks.`same_domain` = FALSE
AND pages.`url` = 'http://google.com/'
Run Code Online (Sandbox Code Playgroud)
我认为,问题在于backlinks.count(*).我不知道我做错了什么.我得到的错误是:
#1064 - …Run Code Online (Sandbox Code Playgroud) 我从下面的代码中收到以下错误.
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@doe.com,username,5f4dcc3b5aa765d61d8327deb882cf99,09/05/2011 1:11:13 AM)' at line 1
$username = $_GET['username'];
$password = md5($_GET['password']);
$firstname = $_GET['firstname'];
$lastname = $_GET['lastname'];
$email = $_GET['email'];
$date = uk_date();
$conn = mysql_connect('localhost', 'myuser', 'mypass');
mysql_select_db('dbname');
$query = "INSERT INTO accounts (FirstName, LastName, Email, Username, Password, LastLoginDate) VALUES (". $firstname . ",". $lastname ."," . $email . "," . $username …Run Code Online (Sandbox Code Playgroud) 我创建了一个帮助程序来在 mysql 中运行自定义函数,我正在尝试匹配
数据库中找到的参数,因此如果成功,它应该返回 X。
刀刃 :
@foreach($ficha as $est)
@foreach($est->equipos as $eq)
@foreach($eq->parametros as $param)
<p>{{ tiene_parametro_ficha($param->nombre ,$ficha->first()->id) }}</p> //FUNCTION, pass 2 values
@endforeach
@endforeach
@endforeach
Run Code Online (Sandbox Code Playgroud)
帮手:
function tiene_parametro_ficha($param, $id_est)
{
$queries =DB::select("tiene_parametro_ficha($param, $id_est)"); //I tried alias Result , it gives error too
}
Run Code Online (Sandbox Code Playgroud)
MySQL 功能:
BEGIN
DECLARE mivar INT;
SET @PAR=PARAM;
SET @ID_EST = ID_EST;
SELECT (if((p.nombre = @PAR),1,0)) INTO mivar
FROM estacion AS e
INNER JOIN equipo_estacion AS ee ON ee.estacion_id = @ID_EST
INNER JOIN equipo AS …Run Code Online (Sandbox Code Playgroud) MYSQL(version5.1)中以下查询的GOT错误
SELECT year,month,sum(fact_1),sum(fact_2),sum(fact_3),sum(fact_4)
from(
select year,month,fact_1,fact_2,0 as fact_3,0 as fact_4 from table_1
intersect
select year,month,0 as fact_1,0 as fact_2,fact_3,fact_4 from table_2
) as combined_table
group by month,year
Run Code Online (Sandbox Code Playgroud)
代码为#1064的错误行: -
您的SQL语法有错误; 检查与您的MySQL服务器版本对应的手册,以便在'select year,month,0 as fact_1,0 as fact_2,fact_3,fact_4 from table_2'附近使用正确的语法,作为第5行的ct g'
但是以下查询给出了期望的结果: -
SELECT year,month,sum(fact_1),sum(fact_2),sum(fact_3),sum(fact_4)
from(
select year,month,fact_1 ,fact_2,0 as fact_3,0 as fact_4 from table_1
union
select year,month,0 as fact_1,0 as fact_2,fact_3,fact_4 from table_2
) as ct
group by month,year
Run Code Online (Sandbox Code Playgroud)
任何人都能说出我犯的错误吗?任何人都可以帮助我理解问题背后的根本原因.
我试图对一个小的MYSQL表进行简单的查询,但是当我插入Where子句时,我突然得到一个无效的查询错误(while(mysql_fetch_array ){}在没有where的情况下添加了一个).MYSQL控制台提供了1064(语法)错误,但是,我检查了MYSQL文档,并且我正在使用正确的语法.
<?php
$ind=rand(1,3);
$quote=Null;
$sign=Null;
$afil=Null;
$con=mysql_connect(localhost,root,********);//connect to database
mysql_select_db("phone_site",$con);//select table
$query="SELECT * FROM quotes WHERE index=$ind";//get the row for that index
$data=mysql_query($query);
//print out text
print ("<p id=\"quote\">" . $data['quote'] . "</p>");
print ("<p id=\"ename\">" . $data['sign'] . "</p>");
print ("<p id=\"afill\">-- " . $data['afil'] . "</p>");
mysql_close($con);//close connection
?>
Run Code Online (Sandbox Code Playgroud)
谁知道问题是什么?我正在使用XAMPP.它的MYSQL有问题吗?
我试图用这段代码创建一个表:
CREATE TABLE IF NOT EXISTS `entries` (
`id` int(10) NOT NULL auto_increment,
`atom_id` varchar(512) NOT NULL,
`title` varchar(256) NOT NULL,
`author` varchar(128) NOT NULL,
`link` varchar(512) NOT NULL,
`content` longtext NOT NULL,
`updated` varchar(25) NOT NULL,
`inserted` varchar(25) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `atom_id` (`atom_id`),
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `topics` (
`id` int(10) NOT NULL auto_increment,
`status` varchar(32) NOT NULL,
`hub` varchar(512) NOT NULL,
`topic` varchar(512) NOT NULL,
`lease` varchar(25) …Run Code Online (Sandbox Code Playgroud) 这个查询给我一个错误1064:
UPDATE `the_table_name` SET `build` = '7' WHERE `ID` = '820000',
UPDATE `the_table_name` SET `build` = '7' WHERE `ID` = '820400';
Run Code Online (Sandbox Code Playgroud)
这是表模式:
CREATE TABLE `the_table_name` (
`ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(45) NOT NULL,
`destroyedID` int(10) unsigned NOT NULL,
`flags` int(10) unsigned NOT NULL,
`build` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=77000301 DEFAULT CHARSET=latin1
Run Code Online (Sandbox Code Playgroud) 所以我有这个脚本需要一堆json文件并将它们发送到我的数据库.该脚本适用于8777个文件,但对于70个文件,我得到以下mysql语法错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Shea', '', '190', '1981-4-30', 'Right', '106', '13', '25', '65', '39', '64', '61' at line 1
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的循环,我为长查询道歉:
For($id=1; $id<=205600; $id++)
{
if (file_exists('data/players/'.$id.'.json'))
{
//read json file
$json_file = file_get_contents('data/players/'.$id.'.json');
$file_data = json_decode($json_file, true);
//my super long query
$query = 'INSERT INTO `db`.`table` (`id`, `first_name`, `last_name`, `common_name`, `height`, `dob`, `foot`, `club_id`, `league_id`, `nation_id`, `attribute1`, `attribute2`, …Run Code Online (Sandbox Code Playgroud) 我尝试使用查询来查找此查询的用户:
Select id, username, lat, long,
acos(sin(0.761312289853)*sin(radians(lat)) + cos(0.761312289853)*cos(radians(lat))*cos(radians(long)-0.0676354285243)) * 6371 As D
From (
Select id, username, lat, long,
From rcp_users
Where lat Between 43.4491099949 And 43.7908522051
And long Between 3.63919239657 And 4.11125680343
) As FirstCut
Where acos(sin(0.761312289853)*sin(radians(lat)) + cos(0.761312289853)*cos(radians(lat))*cos(radians(long)-0.0676354285243)) * 6371 < 30
Order by D
Run Code Online (Sandbox Code Playgroud)
但我有这个错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'long,
acos(sin(0.761312289853)*sin(radians(lat)) + cos(0.761312289853)*' at line …Run Code Online (Sandbox Code Playgroud)