kleine Syntaxfrage zu der man wenig findet

Tsa

Mitglied
Hey Leute...
ich hab nen syntax problem und bin mir fast sicher, dass das schnell geklärt ist :)
Komme aus dem Java Bereich und daher nicht so fit in der PHP Syntax und seinen Tücken ;)
Möchte folgenden Ausdruck benutzen:
PHP:
		$bild = bilderAuslesen.php?id=$row->bildid;

Denke man sieht ja wo das Problem ist! Wie mach ich das richtig?
Der Fehler lautet: Parse error: syntax error, unexpected '=' in

Würde mich natürlich drüber freuen, wenn der ein oder andere einen Link dazu hat, ich hab leider nichts gefunden! Vielleicht hab ich auch nur die falschen Suchbegriffe benutzt, wie genau ich danach suchen sollte war mir nämlich nicht klar ;)
Liebe Grüße,
Jens
 
So funktioniert das nicht ;)
Du musst die URL mit der Funktion file_get_contents vom Webserver holen, wobei man jedoch dann einiges an Geschwindigkeit verliert.

Besser wäre folgende Methode (du musst ggf. die einzubindende Datei so anpassen, dass diese nicht auf die GET-Variable, sondern auf die entsprechende Variable zugreift):
Code:
$id = $row->bildid; // der Parameter id, der an die angegebene Datei übergeben werden soll
include('bilderAuslesen.php');

Du musst diesen include jedoch an der Stelle machen, wo die Ausgabe auch getätigt werden soll.

Falls du aber den Wert in einer Variable brauchst, musst du das ganze in der bilderAuslesen.php in eine Funktion machen und dann die Ausgabe zurückgeben lassen.
Oder du verwendest dazu den Output-Buffer (was aber die etwas unschönere und langsamere Lösung wäre)::
Code:
$id = $row->bildid;
ob_start();
include('bilderAuslesen.php');
$bild = ob_get_clean(); // in dieser Variable $bild steht dann das, was diese Datei, die eingebunden wurde, ausgibt

MfG
Fabsch
 
Wie in Java müssen auch in PHP Zeichenketten als solche gekennzeichnet werden. Also:
PHP:
$bild = "bilderAuslesen.php?id=".$row->bildid;
 
Hey,
Also die Ansätze sind schon ganz gut, aber es hat mich noch nichts weiter gebracht! Vielen Dank aber schonmal :)

Vielleicht sollte ich kurz näher erläutern was ich vor hab und mehr vom code posten!

Also ich will mit Hilfe eines Scriptes, dass ich im Internet gefunden habe das Bild, welchees ich aus der Datenbank lese verkleinern und dann anzeigen! Daher ist es wichtig, dass das Bild hinterher in der Variable steht und ich mit weiter arbeiten kann.
Hab jetzt mehrere von den Ansätzen ausprobiert, doch nichts hat mich zu dem Ergebnis gebracht! ich kopiere mal die nötigen Textstellen!

bilderAuslesen.php
PHP:
<?php

// getdata.php3 - by Florian Dittmer <dittmer@gmx.net>
// Example php script to demonstrate the direct passing of binary data
// to the user. More infos at http://www.phpbuilder.com
// Syntax: getdata.php3?id=<id>

if(isset($id))
{
    // you may have to modify login information for your database server:
    	include("config.php");
		include("connect.php");

    	$query = "select bin_data,filetype from binary_data where id=$id";
    	$result = @MYSQL_QUERY($query);

    	$data = @MYSQL_RESULT($result,0,"bin_data");
    	$type = @MYSQL_RESULT($result,0,"filetype");

    	Header( "Content-type: $type");
    	echo $data;

	};
?>

Die Stelle wo ich es anwenden will mit dem resize:
Das ist das letzte was ich probiert hatte... gibt einfach nur den link aus :( Wenn ich stattdessen $data (s.h. oben die datei, die ja includet wird) eintrage das gleiche!
PHP:
$imgTrans = new imageTransform();
	while($row = mysql_fetch_object($ergebnis))
	{
		$id = $row->bildid;
		ob_start();
		include('bilderAuslesen.php');
		$bild = ob_get_clean();
    	        $imgTrans->sourceFile = $bild;
   	 	$imgTrans->targetFile = "ausgabe.gif";
		$imgTrans->resizeToHeight = 120;
    	        echo "<img src='".$imgTrans->targetFile."'>"; 
	}
also mehrere Bilder sollen dann hintereinander verkleinert und ausgegeben werden! Was ich dann später noch implementieren will ist das man auf nen link klickt und sie dann in Original Größe dargestellt werden. Doch das ist dann denk ich ziemlich einfach, wenn das erstmal klappt :)

Vielen Dank nochmal,
Jens :)
 
Es soll aber auch die breite proportional zur Höhe geändert werden ;) Das andere wäre ja echt ne schön einfache sache ;)
 
Du kannst doch deine Angaben nach deinen belieben mit php errechnen.
HTML:
<img width="<? echo $width; ?>px" height="<? echo $height; ?>px" src="<? echo $bild; ?>.png" alt="<? echo $bild; ?>">
 
Das macht ja die Klasse und stellt es als Bild zur Verfügung!
Problem ist, wenn ichs berechne, wie bekomm ich die alten Angaben um es sowohl in der Höhe, als auch in der Breite, auf die gleiche Prozentzahl zu verkleinern? Es soll ja net hinterher verzogen sein :/

Habs geschafft! Vllt net gabs optimal, aber ich verkleiner es jetzt mit CSS folgendermaßen:

echo "<img src='bilderAuslesen.php?id=". $row->bildid ."' style='height: 200px;' >";

er verkleinert es nun auch proportional :)
Danke an alle und ich hoffe das die Frage auch andere weiter bringen wird!

Liebe Grüße, Jens
 
Zuletzt bearbeitet:
Zurück