PHP + MYSQL (SELECT) 관련 질문입니다.

   조회 3564   추천 0    

안녕하세요! 지금 어떤 프로젝트를 만들고 있는게 있는데용.일단 웹으로 할꺼라 PHP 를 사용했구요. 대충 이렇습니다. 


사용자가 값을 입력 후 엔터를 누르면 --> PHP 에서 DB 접속후 그 컬럼에서 그 값이 있는지 확인 후 없으면 그 값이 없다고 해주면 되고 있으면 있다고 해주면 되는 알고리즘 입니다. 몇일째 이것만 찾아보는데 너무 어렵네요..ㅠㅠ 혹시 이거에 대한 예제나 어떻게 하면 되는지 알려주실분 있으실까요.. 

감사합니다 :)  



짧은글 일수록 신중하게.
김제연 2020-02
처음이시면 프레임워크 흐세요 codeigniter  초보용으로 추천
오라클만 있는줄 알았는데  mysql에도 값이 있으면 update하고 없으면 insert하는게 있군요..
https://tez.kr/161

입력이 아니라 단순히 select해서 결과만 확인한다면 이쪽 강의 참고바랍니다.
https://opentutorials.org/course/3167/19586
etor 2020-02
-- index.php
<?php

$HOST = '127.0.0.1';
$USER = 'root';
$PASS = '';
$DB = 'test';

?>

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>PHP + Mysql</title>
</head>
<body>

<?php if (isset($_POST['url'])): ?>

<div class="result"> 

<?php
$mysqli = mysqli_connect($HOST, $USER, $PASS, $DB);

if ($mysqli) {
  $stmt = $mysqli->prepare('SELECT url from site where url = ?');
  $stmt->bind_param('s',  $_POST['url']);
  $stmt->execute();

  $row = $stmt->get_result()->fetch_assoc();

  if (isset($row['url'])) {
    echo '<p>'.$row['url'].'</p>';
  } else {
    echo '<p>Not found</p>';
  }

  $stmt->close();
}

?>

  <p>
    <a href="/index.php">Back</a> to the Search Form
  </p>
</div>
<?php else: ?> 
    <form action="index.php" method="post">
      <input type="text" name="url" value="">
      <input type="submit" value="Search">
    </form>
<?php endif; ?>

</body>
</html>
--

-- mysql console --
mysql> use test;
Database changed

mysql> show create table site;
+-------+-------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                |
+-------+-------------------------------------------------------------------------------------------------------------+
| site  | CREATE TABLE `site` (
  `url` char(50) NOT NULL,
  PRIMARY KEY (`url`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> select * from site;;
+----------------+
| url                      |
+----------------+
| www.daum.com  |
| www.google.com|
| www.naver.com  |
+----------------+
3 rows in set (0.00 sec)
--

-- PHP 내장 서버
$ php -S 127.0.0.1:8080
--
     
KIKI1140 2020-02
안녕하세요:) 답변감사드립니다. 지금 주신코드로 열심히 연구(?) 중입니다..php + mysql 이 생각보다 어렵네요.. 도움주셔서 감사합니다!
          
etor 2020-02
최대한 간결하게 만들었습니다. 인터넷 조금만 돌아보고 공부하면 금방 알 수 있는 코드니까 파이팅 하세요.
리얼홀릭 2020-02
url주소입력창에서 google.com 을 쳤는데 가지고 계신 서버에서 값이 있나 없나를 알고 싶으시다는 얘기신가요 혹시?
서버는 ip 도메인 기반이라 google.com을 쳤으면 구글의 서버로 들어가지 그 값을 님께서 가진 서버로 전송해야한다면
중간에 뭔가 애드웨어 같은 매개체나 플러그인이 설치되어  있어야지 아님 불가합니다.


QnA
제목Page 4501/5716
2014-05   5202391   정은준1
2015-12   1735056   백메가
2018-09   3559   메로니
2017-07   3559   나파이강승훈
2017-07   3559   일국
2017-05   3559   Win31
2017-05   3559   PAMA머리
2019-11   3559   늘파란
2017-08   3558   Doker
2014-04   3558   서울I김동수
2015-09   3558   철이님
2020-12   3558   나파이강승훈
2016-03   3558   김건우
2020-10   3558   전진
2020-04   3558   삐돌이슬픔이
2019-05   3558   마하의속도
2015-01   3558   박완경
2017-07   3558   jake
2017-09   3558   나파이강승훈
2017-09   3558   Astarot
2017-03   3558   AplPEC
2018-08   3558   컴박