YouTube-Videos einbinden!
Rattenfritzcomputer
- php
Ich habe so ein Unterhaltungssystem entwickelt, wo man Text, Links, Grafiken und YouTube-Clips einfügen kann. Jetzt will ich verhindern, dass andere Flash-Dateien eingebunden werden. Deshalb muss .youtube.com/watch?v= vorkommen. Das muss aber nur sein, wenn man im Text [YouTube] verwendet hat. Denn sonst braucht ja bei YouTube-Video-Textinputfeld überhaupt nichts stehen, wenn man kein Video in den Text eingebunden hat. Das würde dann ca. so aussehen: [code lang=php]if(substr_count($Text,"[YouTube]") && ??????) {die("Fehlertext");}[/code. Irgendwie habe ich aber heute überhaupt keine Idee, was ich statt den Fragezeichen schreiben soll. Ich weiß nicht, warum ich in letzter Zeit keine Ideen habe. Wisst ihr, was man da schreiben könnte?
lgrfc
Hallo シ
Jetzt will ich verhindern, dass andere Flash-Dateien eingebunden werden. Deshalb muss .youtube.com/watch?v= vorkommen. Das muss aber nur sein, wenn man im Text [YouTube] verwendet hat. Denn sonst braucht ja bei YouTube-Video-Textinputfeld überhaupt nichts stehen, wenn man kein Video in den Text eingebunden hat. Das würde dann ca. so aussehen:
if(substr_count($Text,"[YouTube]") && ??????) {die("Fehlertext");}
. Wisst ihr, was man da schreiben könnte?
Warum nicht einfach die gleiche Technik verwenden?
if(substr_count($Text,"[YouTube]") || substr_count($Text, '.youtube.com/watch?v='){
// Erfolg
} else {
// Fehler (hier aber bitte kein die() sondern eine für den Benutzer akzeptable Fehlerbehandlung!)
}
—Gabriel﹫
Hallo シ
Jetzt will ich verhindern, dass andere Flash-Dateien eingebunden werden. Deshalb muss .youtube.com/watch?v= vorkommen. Das muss aber nur sein, wenn man im Text [YouTube] verwendet hat. Denn sonst braucht ja bei YouTube-Video-Textinputfeld überhaupt nichts stehen, wenn man kein Video in den Text eingebunden hat. Das würde dann ca. so aussehen:
if(substr_count($Text,"[YouTube]") && ??????) {die("Fehlertext");}
. Wisst ihr, was man da schreiben könnte?Warum nicht einfach die gleiche Technik verwenden?
if(substr_count($Text,"[YouTube]") || substr_count($Text, '.youtube.com/watch?v='){
// Erfolg
} else {
// Fehler (hier aber bitte kein die() sondern eine für den Benutzer akzeptable Fehlerbehandlung!)
}
>
> —Gabriel[﹫](mailto:willi292@web.de)
Was würdest du statt die() nehmen?
lg
rfc
hi シ
Jetzt will ich verhindern, dass andere Flash-Dateien eingebunden werden. Deshalb muss .youtube.com/watch?v= vorkommen. Das muss aber nur sein, wenn man im Text [YouTube] verwendet hat. Denn sonst braucht ja bei YouTube-Video-Textinputfeld überhaupt nichts stehen, wenn man kein Video in den Text eingebunden hat. Das würde dann ca. so aussehen:
if(substr_count($Text,"[YouTube]") && ??????) {die("Fehlertext");}
. Wisst ihr, was man da schreiben könnte?Warum nicht einfach die gleiche Technik verwenden?
if(substr_count($Text,"[YouTube]") || substr_count($Text, '.youtube.com/watch?v='){
// Erfolg
} else {
// Fehler (hier aber bitte kein die() sondern eine für den Benutzer akzeptable Fehlerbehandlung!)
}
> >
> > —Gabriel[﹫](mailto:willi292@web.de)
>
> Was würdest du statt die() nehmen?
Es gibt dafür keine äquivalente Funktion.
Das Error-Handling muss im Voraus geplant werden, jetzt kannst du höchstens noch folgendes machen:
(Achtung, Pseudocode!)
~~~php
if(substr_count($Text,"[YouTube]") || substr_count($Text, '.youtube.com/watch?v='){
// - Datenbankeintragung durchführen
} else {
// - Zurück zur letzten Seite, in der textarea steht $Text, es wird eine Fehlermeldung angezeigt
// Du kannst z.B. $error['wrongSrc'] = 1 setzen, und dann bei deiner Ausgabe prüfen, ob $error gesetzt ist, und eine dementsprechende Fehlermeldung ausgeben.
}
Wie das im einzelnen aussieht, hängt völlig von deinem gesamten Script ab.
—Gabriel﹫
Wie das im einzelnen aussieht, hängt völlig von deinem gesamten Script ab.
hi, fals du das Script sehen willst:
<?php
#Feldernamen in PHP definieren
$Tube=htmlentities(trim($_POST["tube"]));
$Text=htmlentities(trim($_POST["text"]));
$Link=htmlentities(trim($_POST["link"]));
$Bild=htmlentities(trim($_POST["bild"]));
$Name=htmlentities(trim($_POST["name"]));
#Nachsehen, ob alle Pflichfelder ausgefüllt sind
if (($Name=="")) die("Es ist folgender Fehler aufgetreten: Du bist zwar eingelogt, doch deine Benutzerdaten sind nicht verfügbar.");
if (($Text=="")) die("Du hast keine Zeichen ins Chatmeldungsfeld eingegeben.");
#Zeichenverbote
if (substr_count($Text,"<") || substr_count($Text,">") || substr_count($Text,"<") || substr_count($Text,"<") || substr_count($Text,">") || substr_count($Text,">")) die("< und > sind verboten.");
#Symilies definieren
$Text=str_replace(":lachen:","<img src='sy_lachen.png'>",$Text);
$Text=str_replace(":->","<img src='sy_lachen.png'>",$Text);
$Text=str_replace(":>","<img src='sy_lachen.png'>",$Text);
$Text=str_replace(":D","<img src='sy_lachen.png'>",$Text);
$Text=str_replace(":-D","<img src='sy_lachen.png'>",$Text);
$Text=str_replace("=D","<img src='sy_lachen.png'>",$Text);
$Text=str_replace("=-D","<img src='sy_lachen.png'>",$Text);
$Text=str_replace("=>","<img src='sy_lachen.png'>",$Text);
$Text=str_replace("=->","<img src='sy_lachen.png'>",$Text);
$Text=str_replace(":liebe:","<img src='sy_love.png'>",$Text);
$Text=str_replace(":love:","<img src='sy_love.png'>",$Text);
$Text=str_replace(":verkallt:","<img src='sy_love.png'>",$Text);
$Text=str_replace(":verliebt:","<img src='sy_love.png'>",$Text);
$Text=str_replace(":-*","<img scr='sy_love.png'>",$Text);
$Text=str_replace("=-*","<img scr='sy_love.png'>",$Text);
$Text=str_replace(":*","<img scr='sy_love.png'>",$Text);
$Text=str_replace("=-*","<img scr='sy_love.png'>",$Text);
$Text=str_replace(":-X","<img src='sy_x.png'>",$Text);
$Text=str_replace("=-X","<img src='sy_x.png'>",$Text);
$Text=str_replace("=X","<img src='sy_x.png'>",$Text);
$Text=str_replace(":X","<img src='sy_x.png'>",$Text);
$Text=str_replace(":x:","<img src='sy_x.png'>",$Text);
$Text=str_replace("^^","<img src='sy.png'>",$Text);
$Text=str_replace(":-)","<img src='sy.png'>",$Text);
$Text=str_replace(":)","<img src='sy.png'>",$Text);
$Text=str_replace("=-)","<img src='sy.png'>",$Text);
$Text=str_replace("=)","<img src='sy.png'>",$Text);
$Text=str_replace(":smilie:","<img src='sy.png'>",$Text);
$Text=str_replace("-)","<img src='sy_zwink.png'>",$Text);
$Text=str_replace(")","<img src='sy_zwink.png'>",$Text);
$Text=str_replace(":zwinker:","<img src='sy_zwink.png'>",$Text);
$Text=str_replace(":geld:","<img src='sy_geld.png'>",$Text);
$Text=str_replace(":-$","<img src='sy_geld.png'>",$Text);
$Text=str_replace(":$","<img src='sy_geld.png'>",$Text);
$Text=str_replace("=-$","<img src='sy_geld.png'>",$Text);
$Text=str_replace("=$","<img src='sy_geld.png'>",$Text);
$Text=str_replace(":$:","<img src='sy_geld.png'>",$Text);
$Text=str_replace(":euro:","<img scr='sy_geld.png'>",$Text);
$Text=str_replace(":angst:","<img src='sy_angst.png'>",$Text);
$Text=str_replace(":-~","<img src='sy_angst.png'>",$Text);
$Text=str_replace(":~","<img src='sy_angst.png'>",$Text);
$Text=str_replace("=~","<img src='sy_angst.png'>",$Text);
$Text=str_replace("=-~","<img src='sy_angst.png'>",$Text);
$Text=str_replace(":normal:","<img src='sy_normal.png'>",$Text);
$Text=str_replace(":-|","<img src='sy_normal.png'>",$Text);
$Text=str_replace(":--","<img src='sy_normal.png'>",$Text);
$Text=str_replace(":-","<img src='sy_normal.png'>",$Text);
$Text=str_replace(":|","<img src='sy_normal.png'>",$Text);
$Text=str_replace("=|","<img src='sy_normal.png'>",$Text);
$Text=str_replace("=-|","<img src='sy_normal.png'>",$Text);
$Text=str_replace("=--","<img src='sy_normal.png'>",$Text);
$Text=str_replace("=-","<img src='sy_normal.png'>",$Text);
$Text=str_replace(":boese:","<img src='sy_boese.png'>",$Text);
$Text=str_replace(":bose:","<img src='sy_boese.png'>",$Text);
$Text=str_replace(":-(","<img src='sy_boese.png'>",$Text);
$Text=str_replace(":(","<img src='sy_boese.png'>",$Text);
$Text=str_replace("=(","<img src='sy_boese.png'>",$Text);
$Text=str_replace("=-(","<img src='sy_boese.png'>",$Text);
$Text=str_replace(":zufrieden:","<img src='sy_zufrieden.png'>",$Text);
$Text=str_replace(":-]","<img src='sy_zufrieden.png'>",$Text);
$Text=str_replace(":]","<img src='sy_zufrieden.png'>",$Text);
$Text=str_replace("=-]","<img src='sy_zufrieden.png'>",$Text);
$Text=str_replace("=]","<img src='sy_zufrieden.png'>",$Text);
$Text=str_replace(":-#","<img src='sy_hase.png'>",$Text);
$Text=str_replace(":#","<img src='sy_hase.png'>",$Text);
$Text=str_replace("=#","<img src='sy_hase.png'>",$Text);
$Text=str_replace("=-#","<img src='sy_hase.png'>",$Text);
$Text=str_replace(":hase:","<img src='sy_hase.png'>",$Text);
$Text=str_replace(":-<","<img src='sy_vampier.png'>",$Text);
$Text=str_replace(":<","<img src='sy_vampier.png'>",$Text);
$Text=str_replace("=<","<img src='sy_vampier.png'>",$Text);
$Text=str_replace("=-<","<img src='sy_vampier.png'>",$Text);
$Text=str_replace(":vampier:","<img src='sy_vampier.png'>",$Text);
$Text=str_replace(":cool:","<img src='sy_cool.png'>",$Text);
$Text=str_replace("|-)","<img src='sy_wein.png'>",$Text);
$Text=str_replace("|)","<img src='sy_wein.png'>",$Text);
$Text=str_replace("-)","<img src='sy_wein.png'>",$Text);
$Text=str_replace("--)","<img src='sy_wein.png'>",$Text);
$Text=str_replace(":wein:","<img src='sy_wein.png'>",$Text);
$Text=str_replace(":heul:","<img src='sy_wein.png'>",$Text);
$Text=str_replace(":cool:","<img src='sy_cool.png'>",$Text);
#Youtubeclips anzeigen
if(substr_count($Text,"[youtube]") && ($Tube == "")) die("Du hast im Text [youtube] eingegeben, aber unten keine Videoadresse eingegeben.");
if(substr_count($Text,"[YouTube]") && ($Tube == "")) die("Du hast im Text [YouTube] eingegeben, aber unten keine Videoadresse eingegeben.");
if(substr_count($Text,"[YOUTUBE]") && ($Tube == "")) die("Du hast im Text [YOUTUBE] eingegeben, aber unten keine Videoadresse eingegeben.");
if(substr_count($Text,"[Youtube]") && ($Tube == "")) die("Du hast im Text [Youtube] eingegeben, aber unten keine Videoadresse eingegeben.");
if(substr_count($Text,"[youtube]") && ($Tube == "")) die("Du hast im Text [youtube] eingegeben, aber unten keine Videoadresse eingegeben.");
if(substr_count($Text,"[You Tube]") && ($Tube == "")) die("Du hast im Text [You Tube] eingegeben, aber unten keine Videoadresse eingegeben.");
if(substr_count($Text,"[YOU TUBE]") && ($Tube == "")) die("Du hast im Text [YOU TUBE] eingegeben, aber unten keine Videoadresse eingegeben.");
if(substr_count($Text,"[You tube]") && ($Tube == "")) die("Du hast im Text [You tube] eingegeben, aber unten keine Videoadresse eingegeben."); else
#Hier werde ich dann deinen Code einfügen
$Tube=str_replace("http://http://","http://",$Tube);
$Flash="<object width='425' height='373'><param name='movie' value='".$Tube."&color1=0x006699&color2=0x54abd6&border=1&hl=de'></param><param name='wmode' value='transparent'></param><embed src='http://www.youtube.com/v/".$Tube."&color1=0x006699&color2=0x54abd6&border=1&hl=de' type='application/x-shockwave-flash' wmode='transparent' width='425' height='373'></embed></object>";
$Text=str_replace("[youtube]",$Flash,$Text);
$Text=str_replace("[YouTube]",$Flash,$Text);
$Text=str_replace("[YOUTUBE]",$Flash,$Text);
$Text=str_replace("[you tube]",$Flash,$Text);
$Text=str_replace("[You Tube]",$Flash,$Text);
$Text=str_replace("[YOU TUBE]",$Flash,$Text);
#Bilder anzeigen
if(substr_count($Text,"[bild]") && ($Bild == "")) die("Du hast im Text [bild] eingegeben, aber unten keine Bildadresse eingegeben.");
if(substr_count($Text,"[Bild]") && ($Bild == "")) die("Du hast im Text [Bild] eingegeben, aber unten keine Bildadresse eingegeben.");
if(substr_count($Text,"[BILD]") && ($Bild == "")) die("Du hast im Text [BILD] eingegeben, aber unten keine Bildadresse eingegeben.");
$Bild=str_replace("http://http://","http://",$Bild);
$Bildhtml="<img src='".$Bild."' alt='".$Bild."'>";
$Text=str_replace("[bild]",$Bildhtml,$Text);
$Text=str_replace("[Bild]",$Bildhtml,$Text);
$Text=str_replace("[BILD]",$Bildhtml,$Text);
#Links anzeigen
if(substr_count($Text,"[link]") && ($Link == "")) die("Du hast im Text [link] eingegeben, aber unten keine Bildadresse eingegeben.");
if(substr_count($Text,"[Link]") && ($Link == "")) die("Du hast im Text [Link] eingegeben, aber unten keine Bildadresse eingegeben.");
if(substr_count($Text,"[LINK]") && ($Link == "")) die("Du hast im Text [LINK] eingegeben, aber unten keine Bildadresse eingegeben.");
$Link=str_replace("http://http://","http://",$Link);
$Linkhtml="<a href='".$Link."' alt='".$Link."'>".$Link."</a>";
$Text=str_replace("[link]",$Linkhtml,$Text);
$Text=str_replace("[Link]",$Linkhtml,$Text);
$Text=str_replace("[LINK]",$Linkhtml,$Text);
#Abstände übersezten
$Text=nl2br($Text);
#Zahl aktualisieren
$nummer_lesen=fopen("funroom_zahl.txt", "r");
$zahl=fgets($nummer_lesen, 10);
$zahl=trim($zahl);
$zahl++;
$nummer_schreiben=fopen("funroom_zahl.txt", "w");
fwrite($nummer_schreiben, $zahl);
#Chatmeldung 'include'dieren
$cont=file_get_contents("funroomlesen.php");
if (($cont=="") || (strlen($cont)<32)) die("Fehler, Datenbank konnte nicht geladen werden.");
if ($fh=fopen("funroomlesen.php","w")) ;else die("Fehler, Datenbank konnte nicht geschrieben werden.");
fputs($fh,str_replace("/* new */","/* new */ include('".$zahl.".php');",$cont));
fclose($fh);
#Chatmeldungsdatei erstellen
$dateihandle=fopen($zahl.".php", "a");
fputs($dateihandle,"<div class='nick'>Chatmeldung wurde im Raum Funroom am ".date("d.m.y.H:i.s")." von ".$Name." verfasst.</div><div class='meldung'>".$Text."</div>");
fclose($dateihandle);
#Zahl aktualisieren
$nummer_lesen=fopen("funroom_loesch.txt", "r");
$zahl=fgets($nummer_lesen, 10);
$zahl=trim($zahl);
$zahl++;
$nummer_schreiben=fopen("funroom_loesch.txt", "w");
fwrite($nummer_schreiben, $zahl);
#'include' der Chatmeldung entfernen
$cont=file_get_contents("funroomlesen.php");
if (($cont=="") || (strlen($cont)<32)) die("Fehler, Datenbank konnte nicht geladen werden.");
if ($fh=fopen("funroomlesen.php","w")); else die("Fehler, Datenbank konnte nicht geschrieben werden.");
fputs($fh,str_replace("include('".$zahl.".php');","/**/",$cont));
fclose($fh);
#Datei löschen
unlink($zahl.".php");
die("<meta http-equiv='refresh' content='0; URL=index1.php?menu2=on'>");
?>
Fals es da irgendwelche Fehler gibt, dann sag es mir bitte, denn ich bin Anfänger und bin am Anfang vor allem beim richtigen Klammern setzen bei if ein bisschen überfordert. Aber ich glaube, dass man sich einfach nur gewöhnen muss.
lgrfc
hi,
fals du das Script sehen willst:
Ich setze ein Cookie mit der Fehlermeldung und mache eine META-Umleitung zur Eintragsseite. Dort wird dann das Cookie angezeigt.
Hello,
Was würdest du statt die() nehmen?
Du kannst die() benutzen, aber es sollte als Argument eine vollständige und valide HTML-Seite enthalten.
Und dann wäre es doch sinnvoll, dieser auch noch ein paar Informationen über den Fehler bzw. die Möglichkeiten für den User und einen Link zurück zum Projekt mitzugeben.
Ein harzliches Glückauf
Tom vom Berg
http://bergpost.annerschbarrich.de
.