php mysql_connect error 문제 입니다.
본문
Warning: mysql_query(): Access denied for user 'www-data'@'localhost' (using password: NO)
이런 에러가 납니다.
혹여나 접속 정보가 틀릴까봐 계속 확인 하였습니다.
phpmyadmin 에서 정상 입력이 되어 웹사이트 상에서는 확인이 가능합니다.
mysq 정보는,
서버: Localhost via UNIX socket서버 타입: MySQL서버 버전: 5.5.44-0+deb8u1 - (Raspbian)제품 버전: 10사용자: root@localhost서버 문자셋: UTF-8 Unicode (utf8)
입니다..
웹서버는,
Apache/2.4.10 (Raspbian)데이터베이스 클라이언트 버전: libmysql - 5.5.44PHP 확장: mysqli입니다..
phpmyadmin은,
버전 정보: 4.2.12deb2+deb8u1
입니다....
문제는 출력 php에서 게시판으로 뿌려줄 때 에러가 납니다.
이 상황에서 체크 해야 할 부분들 구글신한테도 물어봤는데.. 제가 놓친게 있을까요...........
DB 입력 부분 php 문서는..
<?php
$db = mysql_connect("localhost","root","pi");
mysql_select_db("inspection",$db);
$sql = "create database IF NOT EXISTS inspection";
$retVal = mysql_query($sql);
if(!$retVal){
echo "데이타베이스 생성 실패!!";
exit;
}
mysql_select_db("inspection",$db);
$sql = "create table IF NOT EXISTS product(seq int not null auto_increment, p_key varchar(50) not null,p_variable varchar(50) not null,p_value varchar(50) not null,
s_key varchar(50),s_variable varchar(50),s_value varchar(50), n_key varchar(50),n_variable timestamp, n_value varchar(50), ins_key varchar(50),ins_variable varchar(50),
ins_value varchar(50),prev_seq int,primary key(seq))";
$retVal = mysql_query($sql);
if(!$retVal){
echo "product테이블 생성 실패!!";
exit;
}
$sql = "create table IF NOT EXISTS etc(seq int not null, etc_key varchar(50), etc_variable varchar(50), etc_value varchar(50))";
$retVal = mysql_query($sql);
if(!$retVal){
echo "ect테이블 생성 실패!!";
exit;
}
$sql = "create table IF NOT EXISTS inspection(sub_seq int not null auto_increment,seq int not null, ins_num int,ins_key varchar(50) not null, ins_variable varchar(50),ins_value text,retval varchar(10),primary key(sub_seq))";
$retVal = mysql_query($sql);
if(!$retVal){
echo "inspection테이블 생성 실패!!";
exit;
}
$sql = "create table IF NOT EXISTS tbl_total(seq int not null, ins_value varchar(50), s_value varchar(50),CheckYn varchar(10))";
$retVal = mysql_query($sql);
if(!$retVal){
echo "tbl_total테이블 생성 실패!!";
exit;
}
입니다..
그리고 문제의 DB 출력 문서는..
<?php
ini_set("display_errors",1);
include_once $_SERVER['DOCUMENT_ROOT']."/db.php";
$seq=$_GET['seq'];
$sql = "select
P.seq,p_value,P.ins_value,s_value,n_value,
(select checkYn from tbl_total where seq=P.seq) checkYn
,(select sum(seq) from tbl_total where checkYn='OK') oktotalcheck
,(select sum(seq) from tbl_total where checkYn='FAIL') nototalcheck
from product P where seq='".$seq."'";
$rs = mysql_query($sql);
?>
이렇게 db 정보를 땡겨오고.. db.php는,
$db = mysql_connect('localhost','root','pi');
mysql_select_db("inspection",$db);
로 잘땡겨 오고 있습니다. 입력은 정상적으로 확인 가능한데 출력에서 에러가 생깁니다..
출력부분에 그래서 입력된 db 정보를 전혀 땡기지 못하고 있습니다ㅠㅠ
<?
$arr = array();
$index = 0;
while($row = mysql_fetch_array($rs)){
$arr[$index]['seq'] = $row['seq'];
$arr[$index]['p_value'] = $row['p_value'];
$arr[$index]['ins_value'] = $row['ins_value'];
$arr[$index]['s_value'] = $row['s_value'];
$arr[$index]['n_value'] = $row['n_value'];
$arr[$index]['checkyn'] = ($row['checkYn']=='FAIL') ? '불량':'양품';
$arr[$index]['oktotalcheck'] = ($row['oktotalcheck']) ? $row['oktotalcheck']:0;
$arr[$index]['nototalcheck'] = $row['nototalcheck'];
$index++;
}
for($i=0;$i<count($arr);$i++){
$szSt = 0;
if($i != 0){
$szSt = $arr[$i]['n_value']-$arr[$i-1]['n_value'];
}
$seq = $arr[$i]['seq'];
$p_value = $arr[$i]['p_value'];
$ins_value = $arr[$i]['ins_value'];
$s_value = $arr[$i]['s_value'];
$n_value = $arr[$i]['n_value'];
$checkyn = $arr[$i]['checkyn'];
$oktotalcheck = $arr[$i]['oktotalcheck'];
$nototalcheck = $arr[$i]['nototalcheck'];
?>
<tr>
<td><a href="view.html?seq=<?=$seq?>"><?=$seq?></a></td>
<td><?=$p_value?></td>
<td><?=$ins_value?></td>
<td><?=$s_value?></td>
<td><?=$szSt?>s</td>
<td><?=date("Y-m-d H:i:s",$n_value)?></td>
<td><?=$checkyn?></td>
<td><?=$oktotalcheck?>/<?=$nototalcheck?></td>
<td><a href="javascript:del('<?=$seq?>');">삭제</a></td>
</tr>
<?}?>
출력단 문서 부분 입니다. 아까 왕계란님이 봐주셨는데 하단의 에러는 잡았습니다..
살려주세요ㅠㅠ
!-->!-->!-->!-->
답변을 작성하시기 전에 로그인 해주세요.