2014-11-07 4 views
-3

리틀 도움, PHP 검색 표시 특정 단어들에 여기하십시오

는 PHP SQL에서 필드 테이블 데이터베이스에서 문자열을 추출 할 수있는 방법이 있습니까?

은 내가 필드 거리가 있고, 예를 들어 값이 Waho, Segun, Gims, Korpa

하고 키워드 segun 와 실행 검색 PHP는 다음 Waho, 세군, GIMS, Korpa 표시합니다.

디스플레이 모드에서 Segun 만 표시 할 수 있습니까?

내 검색어 select *from citys where street like '%$key%' or city like '%$key%' order by city asc limit 1 으로 표시하고 echo $row['street']으로 표시하거나 explode?

감사합니다.

+0

그래서 데이터베이스에서 문자열을 제거하려고합니다. 데이터베이스에서 어떤 필드를 원했습니까? 그것은 거리의 필드였습니까? – BrightIntelDusk

+0

그래서 PHP를 사용하여 쿼리에서 찾은 거리를 표시하고 싶습니까? – BrightIntelDusk

+0

PHP를 사용하여 데이터베이스에서 데이터를 가져 오는 데는 매개 변수가있는 쿼리를 사용하는 것이 좋습니다. 위의 예제에서 심각한 보안 결함이있는 쿼리에 $ key 변수를 연결 한 것처럼 보입니다. 특히 $ 키 변수가 사용자 입력에서 오는 경우. – BrightIntelDusk

답변

0

본인의 향후인지 확실하지 않습니다. 그러나 PDO를 사용하는 경우 매개 변수화 된 쿼리를 사용해야합니다.

정말 질문에 더 많은 정보를 제공해야합니다.

$stmt = $pdo->prepare("SELECT street 
         FROM citys 
         WHERE street LIKE :key 
          OR city LIKE :key 
         ORDER BY city ASC 
         LIMIT 1"); 

$stmt->execute(array('key' => "%{$key}%")); 

foreach ($stmt as $row) { 
     echo $row["street"}; 
}