2012-10-19 3 views
1

나는 현재 내 웹 사이트에 매우 간단한 검색 기능을 사용하고 있습니다. 사용자가 검색 쿼리를 입력하면 검색 결과를 표시하는 페이지로 이동합니다. 내 경우에는 사용자가 다른 사용자를 검색합니다. 내 문제는 어떻게 문자열을 두 개의 변수로 분리합니까?PHP로 문자열 분리하기

예 검색어 :

맷 모리스

나는 공간이 발생하는 문자열을 분리하는 내 PHP 싶습니다

. 어떻게해야합니까?

<html> 
    <form method="get" action="results.php"> 
     <input type="text" name="search"/> 
    </form> 

</html> 

<?php 

    // code to explode the string into $fname and $lname 
     if there is a space present 

$fname= Matt 
$lname= Morris 

if (isset($fname) && isset($lname)) { 
$search_query= "SELECT * FROM users WHERE fname LIKE %'".$fname."'% AND lname LIKE 
%'".$lname."'%"; 
// code to run the query and display results 
} 
else if (isset($fname)) { 
$search_query= "SELECT * FROM users WHERE fname LIKE %'".$fname."'%"; 
// code to run the query and display results 
} 
else if (isset($lname)) { 
$search_query= "SELECT * FROM users WHERE lname LIKE %'".$lname."'%"; 
// code to run the query and display results 
} 

?> 

감사

+0

문자열을 폭발시키고 fname/lname을 얻으려는 것을주의해야합니다.성에 공백이있는 사람들이 있습니다. – Brian

+1

당신이 아무것도 위생하지 않는다는 것을 알고있는 정통한 사용자로서, 나는 단지'Matt % Moris'를 검색어로 입력 할 것입니다. – mario

+0

들어가는 것은 무엇입니까? 내가 사용하는 mysql_real_escape_string() 좋은 또는 구식인가? – user1759682

답변

6

당신은 이런 식으로 그것을 할 수 :

list($first, $last) = explode($name, ' ', 2); 
2

$array = explode(' ', $string);

3

당신은 PHP 함수가 폭발 사용할 수 있습니다 http://php.net/manual/en/function.explode.php

// Example 1 
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6"; 
$pieces = explode(" ", $pizza); 
echo $pieces[0]; // piece1 
echo $pieces[1]; // piece2