Homepage selbermachen 7.852 Themen, 35.619 Beiträge

PHP und prozentuale Bildgrössen (@Xafford) ;-)

Heinz_Malcher / 15 Antworten / Baumansicht Nickles


Hi, bei mit will der folgende Befehl einfach nicht klappen:
<?php

echo "<img src=\'test.gif\' height=\'30%\' width=\'40%\'>";

?>


Wer hat einen Tipp??

Es wird einfach garnichts angezeigt, also kein Fehler, sondern das
Bild taucht einfach nicht auf, mit Pixelangaben geht es ohne weiteres,
aber ich brauche Prozentangaben
bei Antwort benachrichtigen
xafford Heinz_Malcher „PHP und prozentuale Bildgrössen (@Xafford) ;-)“
Optionen

hi lukas, das % ist auch ein geschütztes zeichen und muß escaped werden. also probier es mal mit \%

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen
Heinz_Malcher xafford „hi lukas, das ist auch ein geschütztes zeichen und muß escaped werden. also...“
Optionen

Hallo Xafford,
danke für den Tipp, aber anscheinend keine chance :( PHP zu überlisten. Kann man nix machen. Trotzdem natürlich danke :)

bei Antwort benachrichtigen
xafford Heinz_Malcher „anscheinend keine Chance :(“
Optionen

äh..halt ja klar..nu stand ich selbst auch auf der leitung. prozentuale angaben gibt es bei bildern nicht. du hättest 2 alternativmöglichkeiten. mit javascript auf dem client die bilder resizen oder über php auf dem server die bildgröße auslesen und den quelltext entsprechend anpassen lassen. auf dem server wirst du aber dafür die gd-libs brauchen, wenn die nicht installiert sind bleibt nur der weg über javascript.

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen
Heinz_Malcher xafford „anscheinend keine Chance :(“
Optionen

Danke für den Hinweis, ich denke ich werde mich mal an die PHP Sache machen, weil..

Java Script ? Was ist das ? Igiiit Pfui Deibel!! Was wenn der User kein JS unterstützt oder dies und das oder jenes und hiesiges...

neeee

PHP Rulez the WWWorld :-))

Danke nochmal

bei Antwort benachrichtigen
xafford Heinz_Malcher „anscheinend keine Chance :(“
Optionen

na dann viel spaß wenn du einen provider suchst, der die gd-libs installiert hat ;o)...auber irgendwie hast du doch recht, 98% javascript-user sind nun wirklich eine absolute minderheit ;o)

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen
Heinz_Malcher xafford „anscheinend keine Chance :(“
Optionen

Ich bin verwirrt:

Habe nochmal alles versucht:

width='15%' height='60'

geht.... nur bei height geht keinesfalls eine prozent. angabe...

Was hat das zu bedeuten??

98% javascript- user sind nun wirklich eine absolute minderheit ;o)

mist ich brauch bessere ausreden :-P

bei Antwort benachrichtigen
Borlander Heinz_Malcher „PHP und prozentuale Bildgrössen (@Xafford) ;-)“
Optionen

Hallo Heinz,
probiers mal mit "%%" (2 mal "%").

Oder so:
echo '<img src="test.gif" height="30%" width="40%">';
Innerhalb von einfachen Anführungszeichen werden keine Ausdrücke ausgewertet. Ist so auch übersichtlicher, und Du hast weniger zu schreiben. Ohne die Auswertung müsste der String auch noch ein klitzekleines bisschen schneller verarbeitet werden. Wenn Du das Bild als Variable drin haben willst würde ich es so machen:
echo '&ltimg src="'.$img.'" height="30%" width="40%">';

Zu Deiner Version: Sind im HTML-Standard eigentlich auch einfache Anführungszeichen vorgesehen? Ich kenne nur die doppelten oder gar nix.


CU Borlander

bei Antwort benachrichtigen
Heinz_Malcher Borlander „Hallo Heinz, probiers mal mit 2 mal . Oder so: echo Innerhalb von einfachen...“
Optionen

hmm im html standard nicht, ich verwende die einfachen nur in echo befehlen....bin ich irgendwie so gewohnt :-)

danke für den tipp, werds mal versuchen

bei Antwort benachrichtigen
zeek Heinz_Malcher „PHP und prozentuale Bildgrössen (@Xafford) ;-)“
Optionen

Oha, jetzt wird es Zeit, hier mal ein bisschen aufzuräumen!

1. Würde ich es getrost über Java-Scripts machen, die haben nämlich wirklich mehr als 98% der User aktiviert. Wer's nicht hat is eigentlich selber schuld. Das zu meiner Meinung...

2. Musst Du selbstverständlich innerhalb des echo-befehls html-code ausgeben, also natürlich die doppelten anführungszeichen.

3. Gibt es im html-standard KEINE prozentuele Skalierung von Bildern.

4. Gibt es trotzdem eine PHP Lösung des Problems, das die GD Libraries NICHT benötigt...:

$prozenthoehe = 50;
$prozentbreite = 50;
$bildname = "test.jpg";
$size = getimagesize ("$bildname");
$hoehe = ($size[1]/100)*$prozenthoehe;
$breite = ($size[0]/100)*$prozentbreite;
echo ("");
?>

Es mögen Rechtschreibfehler im Code sein, ich habe ihn nicht geparsed, für die bessere Verständlichkeit aber nicht verschachtelt. Ein kleiner Blick in die offizielle Dokumentation hätte vielleicht geholfen...

Für den Fall, dass hier im Forum evtl. nicht alle Zeichen korrekt ausgegeben werden, findet ihr diesen Beitrag auch unter http://www.zeek.org/nick025.htm

Zeek

bei Antwort benachrichtigen
Heinz_Malcher zeek „Oha, jetzt wird es Zeit, hier mal ein bisschen aufzuräumen! 1. Würde ich es...“
Optionen
2. Musst Du selbstverständlich innerhalb des echo-befehls html-code ausgeben, also natürlich die doppelten anführungszeichen.

Das stimmt so nicht ganz: Entweder du gibst den Befehl per echo aus dann so echo "<span style='.....>"; oder so print '<span style=".....> Ansonsten erhälst du einen fetten Error.

3. Gibt es im html-standard KEINE prozentuele Skalierung von Bildern.

Natürlich gibt es die: versuchs doch mal mit height="30%" width="30%"

bei Antwort benachrichtigen
zeek Heinz_Malcher „2. Musst Du selbstverständlich innerhalb des echo-befehls html-code ausgeben,...“
Optionen

2. da dieses forum ganz gerne mal tags rausschmeisst, schau dir mal die kopie meines beitrages auf meiner seite an.. ich habe die echo-funktion getestet und sie geht... sowas..

2. und 3. man sollte sich als programmierer an die vorgegebenen standards halten. wenn du mir die stelle der offiziellen html-dakumentations des W3 Konsortiums zeigst, an der prozentuale skalierungen für bilder erlaubt sind, machen wir hier ein fass auf und können drüber philosophieren, warum es diesem thread denn gegeben hat.. *g*

Zeek
(www.capuzza.de)

bei Antwort benachrichtigen
Heinz_Malcher zeek „2. da dieses forum ganz gerne mal tags rausschmeisst, schau dir mal die kopie...“
Optionen
2. da dieses forum ganz gerne mal tags rausschmeisst, schau dir mal die kopie meines beitrages auf meiner seite an.. ich habe die echo-funktion getestet und sie geht... sowas..

Zeig mir die Stelle wo ich deine Methode angezweifelt habe...oh wunder es gibt sogar noch eine: print ("..... ist doch sowas von wurscht *kopfschüttel*

Wenn ich etwas darstelle, was mit Opera Netscape und IE funktioniert, ist mir das eigentlich egal ob standard oder nicht, selbst nickles.de ist nicht standard nach W3...und ??meinst du das interessiert hier einen?
bei Antwort benachrichtigen
zeek Heinz_Malcher „2. da dieses forum ganz gerne mal tags rausschmeisst, schau dir mal die kopie...“
Optionen

Aber warum sollte ich mich nicht an's W3 halten, wenn es mit so wenigen Zeilen PHP-Code ohne Probleme möglich ist?

BTW: Ich habe nickles.de nicht genau analysiert, aber wo schiessen die denn am W3 vorbei? Ich hätte gerne (nur interessehalber) ein Beispiel.

bei Antwort benachrichtigen
Heinz_Malcher zeek „Aber warum sollte ich mich nicht an s W3 halten, wenn es mit so wenigen Zeilen...“
Optionen

Hier ein Beispiel der W3 Prüfung, es scheitert schon am simpelsten überhaupt und die seite läuft trotzdem mit tausenden klicks pro tag...tja auch so kanns gehen:



Warnings

Warning: No Character Encoding detected! To assure correct validation, processing, and display, it is important that the character encoding is properly labeled. Further explanations.

Below are the results of attempting to parse this document with an SGML parser.

Fatal Error: no document type declaration; will parse without validation

I could not parse this document, because it uses a public identifier that is not in my catalog.

You should make the first line of your HTML document a DOCTYPE declaration, for example, for a typical HTML 4.01 document:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Title</TITLE>
</HEAD>

<BODY>
<-- ... body of document ... -->
</BODY>
</HTML>


Sorry, I can't validate this document.
bei Antwort benachrichtigen
zeek Heinz_Malcher „Hier ein Beispiel der W3 Prüfung, es scheitert schon am simpelsten überhaupt...“
Optionen

Ich empfehle Dir die Website des W3Cs und ziehe mich hiermit aus der Diskussion zurück, da wir vermutlich nicht auf's eigentliche Thema zurückkommen. *g*

Zeek

bei Antwort benachrichtigen