查找有关使用 and 或语句停止将数据添加到数据库的指导


looking for guidance on using and or statement to stop data being added to database

嗨,感谢这里的一位成员,我设法排除了正在输入的电台名称,如果它在艺术家字段中,现在我被困在使用和或语句..

基本上有时田径场也有站名,但不仅限于站名....

这是我到目前为止的代码...

if($artist != "stationname" ){
$check = mysqli_query($mysqli,"select * from recent where        trackartist='$artist' and tracktitle='$track' and coverurl='$cover'");
$checkrows=mysqli_num_rows($check);
if($checkrows>0) {
  echo "track exists";
 } else {  
  $sql = "INSERT IGNORE INTO recent (trackartist, tracktitle, coverurl)
  VALUES ('$artist', '$track', '$cover')";
  $result = mysqli_query($mysqli, $sql) or die('Error querying     database.');
  mysqli_close($mysqli);
 };
 }

我需要一些指导的是,如果$artist =站名和/或$track在$track的前7个字母中包含站名,如何停止输入,对此的任何指导将不胜感激,因为花了几个小时试图研究这一点无济于事

首先,您应该从$track创建一个子字符串,该子字符串是前 7 个字母的子字符串。之后,在if语句中使用它非常容易。这是我的建议:

   $substr_tracks=substr($track,0,6)//if $track is for example 'computer' than $substr_tracks will be 'compute'.
    //now you create a boolean which will check if  'stationname' is in the substring we created.
    $bool=false;
    //now we do an if statement and use the strpos function which will check the occurence of a string or character in another string and return a number or false.
if(strpos($substr_tracks,'stationname')!=false){
    $bool=true;
} 
    //now you can do your main stuff:
if(($artist != "stationname" && !$bool) && ($artist!='stationname' || !$bool )){

//enter data into database

}else{
//do not enter into database.
}

我希望我明白你在找什么。我已准备好回答任何进一步的问题。