카테고리 없음

2021-01-09 개발일지

way to happiness 2021. 1. 9. 11:38

@

mysql비밀번호를 바꾸고 싶었다. mysql 5.7 버전 이상부터는 alter를 써야한다는 둥의 이야기를 다 듣고 그대로 했지만 비밀번호가 변경되지 않았다. (to-dy.tistory.com/58 이 블로그를 참조해서 진행함.)

 

@

user 테이블의 host에 localhost와 127.0.0.1이 둘 다 있었다. 저번에 구글링 중에 "localhost라고 하지말고 127.0.0.1이라고 하면 되는게 함정.."이라는 문구를 봤던 기억이 나서 127.0.0.1의 행을 삭제했다.

->정상적으로 비밀번호가 변경되었음.

password_last_changed가 root는 계속 변경이 되는데 127.0.0.1은 변경이 되지 않아서 뭔가 쟤가 문제가 있다고 생각했다.

 

 

 

@

게시판 글을 삭제하면 넘버링이 안맞는 문제 해결- auto_increment를 사용하지 않고 테이블의 행의 개수를 반환하는 mysql함수를 이용함.

$preQuery="SET @COUNT=0";
  $stmt=$pdo->prepare($preQuery);
  $stmt->execute();

  $preQuery="UPDATE letters SET num=@COUNT:=@COUNT+1";
   $stmt=$pdo->prepare($preQuery);
   $stmt->execute();


  $preQuery="SELECT COUNT(num) FROM letters";
  $stmt=$pdo->prepare($preQuery);
  $stmt->execute();
  $rowCount=$stmt->fetch();
  // print_r($rowCount);
  //$rowCount['COUNT(num)']=행의 갯수

 


  $query="INSERT INTO letters(num, title, contents) VALUES({$rowCount['COUNT(num)']}+1 ,'{$_POST['title']}', '{$_POST['contents']}')";//VALUES부분에는 변수만 넣는 것이 아니라
  $stmt=$pdo->prepare($query);
  $stmt->execute();