Fa un esempio pratico indicando cosa contiene un campo, come vuoi che risulti dopo il tuo script e cosa ottieni in realtà.
Fa molta attenzione all'uso di strpos()
Codice PHP:
if ((strpos($artista, 'and conditions') == 0) &&
(strpos($artista, 'name') == 0) &&
(strpos($artista, 'disclouser information') == 0) &&
(strpos($artista, 'information') == 0) &&
(strpos($artista, 'contact') == 0))
Vuoi effettivamente verificare se le sottostringhe indicate sono all'inizio della stringa oppure se NON sono contenute nella variabile $artista?
Io supporrei il secondo caso, perché il primo non si potrebbe mai verificare, è impossibile che sottostringhe diverse siano contemporaneamente all'inizio, quindi modifica quel codice, perché potrebbe non funzionare come credi.
strpos() restituisce la posizione della sottostringa che stai cercando se la trova, FALSE se non la trova.
Se la sottostringa fosse all'inizio, strpos ti restituirebbe 0 (NON false), quindi il tuo controllo "== 0" sarebbe verificato, ma tu non vuoi questo perché vuoi true se la sottostringa non c'è.
Devi usare "=== FALSE", 3 simboli = e la costante FALSE, in questo caso hai la certezza del comportamento voluto.
Devi sempre conoscere bene il comportamento delle funzioni che usi, leggi sempre la documentazione su php.net, quello che ti ho spiegato c'è scritto e lo hanno messo anche in evidenza perché è facile sbagliarsi.