2016-06-10 6 views
0

Hallo Leute, ich versuche, eine Lösung für diese Art von Problem zu finden, ich hoffe, Sie können mir helfen.Ein einzelnes oder mehrere Wörter in einer Zelle erkennen?

Zum Beispiel habe ich einen Tabellennamen table1.

Id   |    Data 
1   | Value1, Value2, Value3, Value4 

Hier ist, dass ich tun möchte.

In IF-Anweisung, wenn es erkennt 1 oder mehr Werte gleich oder ähnlich wie Spalte Daten wird es fortgesetzt werden. Und es ist auch möglich, den Befehl (,) und Leerzeichen() zu ignorieren, wenn Sie die Variable mit dem Wert der Spaltendaten vergleichen?

Danke in fortgeschrittenen Jungs!

Antwort

1

Sie können

<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 
$dbname = "myDB"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

    $sql = "SELECT id, Data FROM table1"; 
    $result = $conn->query($sql); 

    if ($result->num_rows > 0) { 
     // output data of each row 
     while($row = $result->fetch_assoc()) { 
      $data = $row["Data"]; 
      $repdata = array(); 
      foreach($data as $val){ 
       if(++$repdata[$val] > 1){ 
       return true; 
      } 
      } 
      return false; 
     } 
    } else { 
     echo "0 results"; 
    } 
    $conn->close(); 
    ?> 
0

Danke für die Antwort @amit wie dies zu tun, aber ich fand diese Lösung in einfachste Weg, mit preg_match.

$data = ('value1, value2, value3, value4, value5'); 

if(preg_match('[value1|value2]', $row->column_name)) 
Verwandte Themen