mysql 조건식 문의드려요~ > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

mysql 조건식 문의드려요~ 정보

mysql 조건식 문의드려요~

본문

윈도우 날자를 변경하면 그날자에 맞쳐서 엑셀로 출력할수 있는 조건식인데요

list.skin.php 부분에서 현재 출력하는 명령문이구요
<a href='<?=$board_skin_path?>/excel.php?bo_table=<?=$bo_table?>' target='_blank'>Excel 출력</a>

excel.php 에서 데이타를 출력하는 명령문이구요
$temp=mysql_fetch_array(mysql_query("select count(*) from $excel_down where left(wr_datetime,10)=curdate() "));
$result=mysql_query("select * from $excel_down where left(wr_datetime,10)=curdate() ");

이렇게 하면 서버쪽 날자를 변경해야 지만 그해당되는 데이터만 가져올수 있더라구요

다른 pc에서는 날자를 변경해도 원하는 날자의 데이터를 못가져 와서 날자를 입력해서

출력을 눌르면 그날자에 값이 이동해서 데이터를 가져오게 만들려고 하거든요

텍스트로 입력한 날자값에 따라 wr_datetime에 있는 자료만 출력할수 있게 할려면

어떻게 하는게 좋을까요? 아이디어좀 부탁드립니다...

 

db는 정말 어려운거 같아요.. 에휴 ㅠㅠ
  • 복사

댓글 전체

list.skin.php 를

<form method='post' action="/skin/board/todaywork2/excel.php?bo_table=<?=$bo_table?>">
날자&nbsp;&nbsp;<input type="text" name="datetime" size="15" maxlength="15"> </br>
<input type="submit" value="출력">
<input type="reset" value="삭제"></br>
</form>

이런식으로 만들었는데요 아무것도 안들어 가네요 ^^;;;

하 php는 정말 몰르겠다 ㅠㅠ
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>

<table border=0 width="100%" cellspacing="0" cellpadding="0">
<form method='post' action="<?=$board_skin_path?>/excel.php">
    <input type='hidden' name='bo_table' value='<?=$bo_table?>'>
<tr>
<td><input type="text" name="datetime" size="10" maxlength="10"></td>
</tr>
<tr>
<td><input type="submit" value="출력"><input type="reset" value="삭제"></td>
</tr>
</form>
</table>

이렇게 날려보세요.
해바리님~ 매번 답변주셔서 감사합니다 ㅠㅠ

알려주신 대로 list.skin.php에 추가하여 입력을 하면

excel.php쪽에 이런식으로 에러가 뜨네요

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\APM_Setup\htdocs\skin\board\todaywork2\excel.php on line 98
소스쪽 해당라인은
<?
while($data=mysql_fetch_array($result)) {
echo"
  <tr>
    <td>$number</td>
    <td>$data[wr_subject]</td>
<td>$data[ca_name]</td>
<td>$data[wr_name]</td>
    <td class='txt'>$data[wr_datetime]</td>
   
    <td class='txt'>$data[wr_content]</td>
    <td class='txt'>$data[wr_1]</td>
    <td class='txt'>$data[wr_2]</td>
  </tr>
";
  $number--;
  }
echo "</table>";

?>

소수중 98번쪽 echo" 부분에서 에러가 나온다고 하네요...

해바라기님이 원래 알려주신대로 sql쪽 수정하면 서버쪽 날자 변경시에는 잘나오는데

다른쪽 pc에서 날자를 변경해도 변경된 날자로 안넘어가는 문제가 있어서 변경을 할려고 건데요..

혹시 알려주신쪽 text쪽에는 날자를 어떻게 넣어야 하는지요? datetime이니까 2012-04-09 이런식으로

검색을 해서 오는건지?

사람에 욕심이라는게 많은듯 해요 번거롭지만 서버쪽 날자를 변경해서 그떄만 출력하면 되기는 하지만

아무래도 업무일지니까 다들 출력이 필요할거라 생각하다보니 계속 생각하게 되고... ㅠㅠ

번번히 죄송해요...
excel.php 파일 서두에
alert($datetime.'__'.$bo_table);
넘어오는 데이타 확인해보시구요.
날짜형식은 2012-04-09 이렇게...  2012.04.09는 에러입니다.
두날짜양식 다 사용할려면 아래처럼 한줄 추가.
$datetime=substr($datetime,0,4).'-'.substr($datetime,5,2).'-'.substr($datetime,8,2);

sql 부분은 이렇게...
$temp=mysql_fetch_array(mysql_query("select count(*) from g4_write_$bo_table where left(wr_datetime,10)='$datetime' "));
$result=mysql_query("select * from g4_write_$bo_table where left(wr_datetime,10)='$datetime' ");
흠.. 역시 에러가 뜨네요...

[list.skin.php]

<!-- 해바리님 소스 -->
<table border=0 width="100%" cellspacing="0" cellpadding="0">
<form method='post' action="<?=$board_skin_path?>/excel.php">
    <input type='hidden' name='bo_table' value='<?=$bo_table?>'>
<tr>
<td><input type="text" name="datetime" size="10" maxlength="10"></td>
</tr>
<tr>
<td><input type="submit" value="출력"><input type="reset" value="삭제"></td>
</tr>
</form>
</table>

[excel.php]
<?
$excel_down = "g4_write_" . $_GET['bo_table']; //기존에 있던 소스 ecxel_down으로 사용하는것
$wr_id = $id = $_GET['wr_id']; //기존에 있던 소스

$datetime=substr($datetime,0,4).'-'.substr($datetime,5,2).'-'.substr($datetime,8,2); //두날자 출력가능 (해바리님 소스)

include "../../../dbconfig.php";
$db_conn = mysql_connect($mysql_host, $mysql_user, $mysql_password) or die('서버에 접속하지 못했습니다.');
mysql_select_db($mysql_db, $db_conn);
@mysql_query("SET CHARACTER SET utf8");  // 한글깨지면 주석해지

if ($ms =="excel"){
$g4[title] = "excel";
  header( "Content-type: application/vnd.ms-excel" );
  header( "Content-Disposition: attachment; filename=excel.xls" );
  //header( "Content-Description: PHP4 Generated Data" );
 } else if ($ms =="power"){
 $g4[title] = "파워포인트 문서 다운로드";
  header( "Content-type: application/vnd.ms-powerpoint" );
  header( "Content-Disposition: attachment; filename=excel.ppt" );
  // header( "Content-Description: PHP4 Generated Data" );
 } else if ($ms =="word"){
  $g4[title] = "워드 문서 다운로드";
  header( "Content-type: application/vnd.ms-word" );
  header( "Content-Disposition: attachment; filename=excel.doc" );
  //header( "Content-Description: PHP4 Generated Data" );
 } else if ($ms =="memo"){
  $g4[title] = "메모 문서 다운로드";
  header( "Content-type: application/vnd.ms-notepad" );
  header( "Content-Disposition: attachment; filename=excel.txt" );
 } else {
  header( "Content-type: application/vnd.ms-excel" );
  header( "Content-Disposition: attachment; filename=excel.xls" );
 }
  header( "Content-Description: PHP4 Generated Data" );
 
/* 해바리님 소스 */
$temp=mysql_fetch_array(mysql_query("select count(*) from g4_write_$bo_table where left(wr_datetime,10)='$datetime' "));
$result=mysql_query("select * from g4_write_$bo_table where left(wr_datetime,10)='$datetime' ");

/* 날자지정 출력 가능(단 서버에서만!)
$temp=mysql_fetch_array(mysql_query("select count(*) from $excel_down where left(wr_datetime,10)=curdate() "));
$result=mysql_query("select * from $excel_down where left(wr_datetime,10)=curdate() ");
*/

/* 모든데이터 출력 가능
$temp=mysql_fetch_array(mysql_query("select * from table where datetime_col = curdate(); $excel_down "));
$result=@mysql_query("select * from $excel_down order by wr_datetime desc");
*/

$number=$temp[0];
?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">

.txt {mso-number-format:'\@'}
</style>
</head>



<body>
    <table width=100% cellpadding=0 cellspacing=0 border=1>
      <tr align=center height=25 bgcolor=999999>
    <td style=font-weight:bold;>번호</td>
        <td style=font-weight:bold;>제목</td>
        <td style=font-weight:bold;>파트명</td>
        <td style=font-weight:bold;>이름</td>
        <td style=font-weight:bold;>작성일</td>

        <td style=font-weight:bold;>주요이슈 (주간계획/현 주요문제점/비고)</td>
        <td style=font-weight:bold;>금일 실적</td>
        <td style=font-weight:bold;>명일 계획</td>
  </tr>

<?
while($data=mysql_fetch_array($result)) {
echo "

  <tr>
    <td>$number</td>
    <td>$data[wr_subject]</td>
<td>$data[ca_name]</td>
<td>$data[wr_name]</td>
    <td class='txt'>$data[wr_datetime]</td>
   
    <td class='txt'>$data[wr_content]</td>
    <td class='txt'>$data[wr_1]</td>
    <td class='txt'>$data[wr_2]</td>
  </tr>
";
  $number--;
  }
?>
</table>
</body>
</html>

이렇게 넣었습니다.

80번째 -> while($data=mysql_fetch_array($result)) {
이쪽부분이 에러뜨는곳 이라고 나오네요
© SIRSOFT
현재 페이지 제일 처음으로