Brauche Hilfe (PHP "if...")

U

User0

Gast
Hallo, ich bin mir sicher dies ist eine leichte Frage für Euch aber dennoch komm ich nicht drauf.

Beispiel:
PHP:
if(strcmp($row[Name], "Playlist"))

Wie muss es geschrieben werden das nicht nur Name: Playlist
sondern noch ein zweiter begriff drin stehen kann, habe zb. probiert:
PHP:
if(strcmp($row[Name] == "Playlist" or $row[Name] == "Playlist2"))

aber geht nicht, bitte könnte mir jemand das schreiben?

LG Screamdad
 
Zuletzt bearbeitet von einem Moderator: (Rechtschreibung)
Was genau willst du denn bewirken?

Raffe das gerade nicht ...

Soll überprüft werden, on $row['Name'] Playlist oder Playlist 2 enthült, oder ob $row['Name'] gleich Playlist oder Playlist2 ist ...
 
Ich schließe mich Surviv0r an. Was genau soll das werden?

Aber durch etwas raten und viel Glück könnte das vielleicht deine Lösung sein:
PHP:
if(!strcmp($row["Name"],"Playlist") OR !strcmp($row["Name"],"Playlist2")) { }
 
Zuletzt bearbeitet:
PHP:
if(strcmp($row['Name'], "Playlist")  == 0 or strcmp($row['Name'], "Playlist2") == 0){bla; bla;}

Es kommt darauf an was du vergleichen willst. Hier eine Beschreibung von strcmp http://us2.php.net/manual/en/function.strcmp.php

Wenn du "nur" wissen möchtest ob $row[Name] Playlist1 oder Playlist2 ist dann könntest du das auch so machen:

PHP:
if($row['Name'] == "Playlist1" or $row['Name'] == "Playlist2"){ bla; bla;}

bla bla wird in diesem Fall nur ausgeführt wenn $row['Name'] den Wert Playlist1 oder Playlist2 annimmt.

Edit: Code 1 und Code 2 dürften das selbe Ergebnis bewirken ! ist aber nicht getestet !
 
Zuletzt bearbeitet:
cl1985
Wenn du dir sicher bist was er meint ;)

Ansonsten
PHP:
if($row['Name'] == "Playlist1" XOR $row['Name'] == "Playlist2") { }
$row[Name]; #sollte man eh nicht nehmen, wenn schon
$row["Name"]; #oder
$row['Name']; # es sei den es handelt sich um eine Konstante...

#Und falls du vor hast mehrere Playlists zu haben, dann mach eine 'Whitelist':
switch($row["Name"]) {
  case "Playlist1":  echo "ok Playlist 1"; break;
  case "Playlist2": echo "ok Playlist 2"; break;
}
 
Zuletzt bearbeitet:
Stimmt muss mehr Infos geben sry,
also es ist ein Radio was bewirkt....

Playlist steht wenn kein Mod sendet, wenn ein Mod sich einträgt wird dieser Name des mod´s verlinkt zum Profil. Kein Eintrag oder der Eintrag mit Namen Playlist bewirkt das kein Link erstellt wird weil Playlist kein Profil hat. Nun soll aber noch Begriff Event und Battle ebenfalls mit rein was ebenso kein Link erzeugen soll also muss es nun doch möglichkeit geben das man zu Begriff Playlist noch 1-2 Begriffe dazu tun kann die dann ebenfalls wie Playlist sich auswirken udn ich denke da reicht das Posting dieser zeile. denn mein Beispiel Post 1 zeigt wie ich es gerne hätte und dachte das es geht , leider aber versagte. (ich)

LG Screamdad
Ergänzung ()

Eagle-PsyX- schrieb:
cl1985
Wenn du dir sicher bist was er meint ;)

Ansonsten
PHP:
if($row['Name'] == "Playlist1" XOR $row['Name'] == "Playlist2") { }
$row[Name]; #sollte man eh nicht nehmen, wenn schon
$row["Name"]; #oder
$row['Name']; # es sei den es handelt sich um eine Konstante...

#Und falls du vor hast mehrere Playlists zu haben, dann mach eine 'Whitelist':
switch($row["Name"]) {
  case "Playlist1":  echo "ok Playlist 1"; break;
  case "Playlist2": echo "ok Playlist 2"; break;
}

Das bewirkt ja das Playlist1 und Playlist2 als Profil eingetragen wird, es soll genau das geteil erreicht werden aber die richtung ist schon nicht schlecht aber ...

Original
if(strcmp($row[Name], "Playlist"))

Versuch
if(strcmp($row[Name], "Playlist+Playlist2"))
 
Ähm ich bin wohl schwer vom Begriff. Du könntest uns auch ruhig den Quelltext aus dem Zusammenhang zeigen.

Willst du wissen ob Playlist1 gleich Playlist2 oder Playlist1 ungleich Playlist2 ist? Oder ob $row["Name"] gleich/ungleich Playlist1/2 ist?
 
Eagle-PsyX- schrieb:
Ähm ich bin wohl schwer vom Begriff. Du könntest uns auch ruhig den Quelltext aus dem Zusammenhang zeigen.

Willst du wissen ob Playlist1 gleich Playlist2 oder Playlist1 ungleich Playlist2 ist? Oder ob $row["Name"] gleich/ungleich Playlist1/2 ist?


Begrifft "Battle" or "Event" sollen sich genauso wie Begriff "Playlist" verhalten, heisst....

Playlist (kein Profil) = Kein link auf HP
beiden anderen Begriffe sollen ebenfalls vorgehen.

Beispiel:
PlaylistXYZ würde wieder ein Profil kennzeichnen warum? weil nur Playlist ausgeschlossen wurde mit dem Code ;-)
 
kurze Frage, vergleicht strcmp() nicht nur die Länge der Strings? Denn playlist1 und playlist2 sind ja somit gleich lang, also ist die Funktion für die Tonne wenn man eigentlich auf eine genaues Ergebnis raus will will

Wenn du Keywords aus dem String filtern willst würde ich eher auf preg_match() setzten und die Ergebnisse auswerten
 
Findus schrieb:
kurze Frage, vergleicht strcmp() nicht nur die Länge der Strings? Denn playlist1 und playlist2 sind ja somit gleich lang, also ist die Funktion für die Tonne wenn man eigentlich auf eine genaues Ergebnis raus will will

Wenn du Keywords aus dem String filtern willst würde ich eher auf preg_match() setzten und die Ergebnisse auswerten


Also wenn ich aus "Playlist" zb einfach mal "jdiufeindjduiedn" mache ist dies ja länger aber bewirkt das auf der HP genau diese Kette ein Text statt link gezeigt wird, warum? weil es kein Profil sein soll, also muss man doch statt nur Playlist als Profil auszuschliessen dem noch begriffe wie battle und event zufügen können weil diese auch keine mods sind ?!. hmmm
 
[...]aber bewirkt das auf der HP genau diese Kette ein Text statt link gezeigt wird, warum?
Das kann hier keiner nachvollziehen, weil keiner weiß:
1.) Wie der Link zusammengesetzt wird,
2.) Wo und wann der Link zusammengesetzt wird,
3.) Weshalb er zusammengesetzt werden soll.

Was deinen Quelltext betrifft, so ist er Symatisch zwar nicht ganz richtig, scheint aber bei dir keine Fehlermeldung zu verursachen. Das heißt es handelt sich um einen logischen(!) Fehler, keinen von PHP.
Also wenn 'alles' klappt aber das Resultat anders ist wie du es dir vorstellst.

Was ich noch nicht nachvollziehen kann ist, was genau mit strcmp() bzw. der IF-Abfrage gefragt werden soll. Willst du herausfinden ob es die "Playliste" ($row["Name"]) in der Datenbank gibt?
 
:confused_alt: nix verstehen andere Baustelle

was willst du nun ausschließen

nur Playlist (weil automatisch generiert)

$row['Name'] != 'Playlist'

wenn ALLE playlist (also auch durchnummerierte)
PHP:
if ( preg_match('/(playlist)/i', $row['Name'] ) )

wenn ALLE Playlist und auch "mod_name Battle" oder event
PHP:
if ( preg_match('/(playlist|battle|event)/i', $row['Name'] ) )

gibt im zutreffenden Fall true zurück, andernfalls negieren, wenn du den Treffer für eine Ausgabe oder sonstiges brauchst gibts noch ein array mit den Treffern welches man sich schnappen kann
 
PHP:
if ( preg_match('/(playlist|battle|event)/i', $row['Name'] ) )

Bewirkt nun das Mods ohne Link angezeigt werden auf HP.

Playlist und Battle werden nun als Profil erkannt und geben Link.

lol

Genau anders rum udn ich bin am Ziel und Ihr habt ruhe vor mir ;-)
 
also
PHP:
if ( !preg_match('/(playlist|battle|event)/i', $row['Name'] ) )
oder wie

sonst gib mal ne liste richtiger beispiele was soll und was nicht
 
STOPPPPPP
Wie Geil ist das denn.....

Lösung:
if ( !preg_match('/(Playlist|DJ Event)/i', $row['Name'] ) )

Sensationell, Hammer Geil und Riesen Dank @ All, vor allem -> Findus !!!

LG Screamdad
 
Zuletzt bearbeitet von einem Moderator: (Rechtschreibung)
sag doch negieren wenns andersrum gebraucht wird ;)

edit:
da du aber eh "feste" Namen hast, könnte man auch
PHP:
if( !in_array($row['Name'], array('Playlist', 'DJ Event', 'Irgendwas Battle' )) )
verwenden, da bei preg_match() auch "DJ PlaYListerinus" ausgefiltert wird
 
Zuletzt bearbeitet:
OK stimmt man weiss ja nie welche Namen da mal gewählt werden von Usern. ^^

Hab lieben Dank und schönes WE ;-)

Ciao sagt... Screamdad
 
Zuletzt bearbeitet von einem Moderator: (Wie immer... Rechtschreibfehler! ^^)
screamdad!!
Wie behandele ich ein Problem.
1. Herausfinden was du machen willst.
2. Einfach ausprobieren und gucken was rauskommt...
3. zuerst nicht aufgeben und bei Punkt 4. gucken
4. in google nach den schlagwörtern suchen.
5. wenn nicht gefunden, eventuell auf englisch versuchen.
6. WENN das ALLES nicht hilft dann in einen FORUM fragen und die frage gut stellen.

Offenbar drängt bei dir die zeit die punkte 1 -5 durchzuarbeiten. Dein Problem vorhin mit dem HEADER habe ich alleine gelöst... naja und nicht mal eine Antwort bekommen ob es klappt oder nicht. Du sollst einfach ausprobieren und nicht beim ersten mal aufgeben!

Probleme sollten generalisiert wird und nicht mit dem kompletten quellcode angegeben werden.
 
Zurück
Oben