Seite 1 von 2

Gallerymodul mit Kommentar

Verfasst: Do 9. Sep 2004, 13:21
von crazy
Hallo zusammen,
ich schreibe zurzeit gerade das Bildergalleriemodul um. Es sollte zusätzlich zum "grossen Bild" Kommentar eingefügt werden können. Ich habe eine weitere Tabelle bild in der Contenido Datenbank erstellt. Dort gibte es 3 Spalten eine ID, der Pfad des Bildes und der Kommentar (text). Der Input der Gallery bleibt sich. Der Output habe ich wie folgt geändert:

Code: Alles auswählen

<? 

// Bildergalerie 
// Imageresize über ImageMagick *ODER* GD 
// Version: 15.01.2004 
// Kommenatrversion 9.9.04
// 
// Author: Large Green Wood  vgl. http://www.contenido.de/front_dev/upload/1ImageGal.txt 
// Abgeändert mit Kommentar Christian Bachmann



echo "<p>\n"; 

// ANFANG OUTPUT 

$imagedir="CMS_VALUE[2]"; 
$thumbnails="CMS_VALUE[3]"; 
$imagetypes=explode(";","CMS_VALUE[4]"); 
$rows="CMS_VALUE[6]"; 
$cols="CMS_VALUE[5]"; 

$thb_x_size="CMS_VALUE[7]"; 
$thb_y_size="CMS_VALUE[8]"; 

$image_idcat="CMS_VALUE[0]"; 
$image_idside="CMS_VALUE[1]"; 

$im_path="CMS_VALUE[9]"; 

//-- config ende ------------------------------------- 

function is_image($filename,$typearray) { 
  reset($typearray); 
  while($val=each($typearray)) { 
     if (strstr($filename,$val[value])!==false) { 
       return true; 
     } 
  } 
} 


// verkleinert ein Bild auf die angegebene Breite (bei Querformat) oder Höhe (bei Hochformat) 
// Seitenverhältnisse werden beibehalten 
function resizeImageGD($sourceFile, $targetFile, $newwidth=50, $newheight=50){ 
   $source = ImageCreateFromJpeg($sourceFile); 
   $width  = ImageSx($source); 
   $height = ImageSy($source); 

   if ($width > $height){ // Querformat 
      $newheight = $height*($newwidth/$width); 
   }else{ // Hochformat 
      $newwidth  = $width*($newheight/$height); 
   } 

   $target = ImageCreateTrueColor($newwidth,$newheight); 
   // ÄNDERUNG vgl. Forums-Beitrag imagecopyresized ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 
   imagecopyresampled ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 

   ImageJPEG($target,$targetFile,100); 
} 



//-- functions ende ---------------------------------- 

if (!isset($mmstart)) { 
  $mmstart=0; 
} 

// Anzeige eines Bildes oder Übersicht? 

if ($subfile!="") {

//Wenn neuer Kommentar, dann in Datenbank einfügen
if(isset($_POST["text"] )){ 
$sql ="Insert INTO bild VALUES(NULL,'".$subfile."','".$_POST["text"]."')";
$db->query($sql);
$_POST["text"] ="";
}


// Bild anzeigen 
echo "<left><a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"javascript:history.back()\">zurück</a></left>"; 
echo "<br>"; 
echo "<img src=\"$subfile\"><br>"; 
$sql ="Select text FROM bild WHERE pfad='$subfile'";

//Kommentar anzeigen
$db->query($sql);
while ($db->next_record()) {
echo" ".$db->f("text")."<br>";
}


//Reoladlink erstellen
$reload=$sess->url("client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".$subfile);

//Formular für Kommentareingabe:
echo"
<form name='form1' method='post' action='".$PHP_SELF."?".$reload."'>
  <p>Text Eintragen: 
    <input type='text' name='text'>
  </p>
  <p>
    <input type='submit' name='Submit' value='Abschicken'>
  </p>
</form>";
 
echo "<left><a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"javascript:history.back()\">zurück</a></left>"; 

} else { 
// Gallery anzeigen 

$handle=opendir($imagedir); 

echo "<table>"; 
$n=0; 
$filearray=Array(); 
while (false !== ($file = readdir($handle))) { 
        if ($file != "." && $file != ".." && is_image($file,$imagetypes)) { 
             $filearray[]=$file; 
        } 
} 

reset($filearray); 

// skip images... 
for ($n=0;$n<$mmstart;$n++) 
  $ffile=each($filearray); 
$n=0; 
while ($ffile=each($filearray)) { 
             $file=$ffile[value]; 
             // generate thumbnail, if nessesairy. Now THIS is fun :) 
             // natuerlich nur, wenn imagemagick vorhanden ist... 
            if (!file_exists($thumbnails."/thb_".$file) ) { 
               if ($im_path!="") { 
                 $cmd=$im_path."/convert -scale ".$thb_x_size."x".$thb_y_size." ".$imagedir."/".$file." ".$thumbnails."/thb_".$file; 

                 exec($cmd); 
                 // nochmal prüfen! 
                 $thumbnail=file_exists($thumbnails."/thb_".$file); 
                } else{ 
                 // Bilder mit GD verkleinern 
             @ini_set("max_execution_time", 120); 
                 @resizeImageGD($imagedir."/".$file, $thumbnails."/thb_".$file, $thb_x_size,$thb_y_size); 
                 $thumbnail=file_exists($thumbnails."/thb_".$file); 
                } 
            } else 
              $thumbnail=true; 
            if ($n%$cols==0) 
              echo "<tr>\n"; 
            if ($image_idcat!=0) 
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcatside=$image_idcat&subfile=".rawurlencode($imagedir."/".$file)); 
            else 
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".rawurlencode($imagedir."/".$file)); 
            echo "<td valign=\"middle\" align=\"center\" width=\"$thb_x_size\" height=\"$thb_y_size\"><a href=\"$url\">".($thumbnail ? "<img src=\"$thumbnails/thb_$file\" border=\"0\">":"$file")."</a></td>\n"; 
            $n++; 
            if ($n%$cols==0) 
              echo "</tr>\n"; 


        // nur solange wie's not tut... 
        if ($n>=$rows*$cols) 
          break; 
    } 
echo "<tr> <td colspan=\"$cols\" align=\"center\">"; 

if ($mmstart>0) { 
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart-$rows*$cols)); 
  echo "<a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"$url\"> vorherige Bilder...</a>"; 
} 

echo "<span style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\">| zeige Bilder ".($mmstart+1)." - ".($mmstart+$n)." | </span>"; 

if ($n+$mmstart<count($filearray)) { 
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart+$rows*$cols)); 
  echo "<a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"$url\"> weitere Bilder...</a>"; 
} 

echo "</tr>\n"; 
echo "</table>"; 
} // Ende Gallery anzeigen 


echo "</p>"; 
?>
Das ganze siesht du unter http://www.chrigionline.ch/carina/cms

Ich habe jedoch zwei Probleme: Wenn man nach dem Eintragen eines Kommentares reloaded, wird der Kommentar nochmals eingefügt. Der Javascript history back funktioniert nicht. Wie würded ihr dieses Problem lösen? Würded ihr auch ein weiteres File erstellen?
Gruss Crazy

Verfasst: Do 9. Sep 2004, 13:29
von emergence
history.back akzeptiert auch parameter zb
history.back(-2) sollte zwei schritte zurückspringen...

Verfasst: Do 9. Sep 2004, 14:22
von crazy
Danke emergence für deine rasche Antwort. Ich habe history.back mit Paramter ausprobiert. Es funktioniert nicht ganz so wie ich es mir vorstelle. Ich kann zwar mit -2, zwei Seiten zurück springen. Jedoch drei Seiten(-3) oder vier Seiten(-4) zurück funktioniert nicht.

Mein Code zurzeit:

Code: Alles auswählen

<? 

// Bildergalerie 
// Imageresize über ImageMagick *ODER* GD 
// Version: 15.01.2004 
// Kommenatrversion 9.9.04
// 
// Author: Large Green Wood  vgl. http://www.contenido.de/front_dev/upload/1ImageGal.txt 
// Abgeändert mit Kommentar Christian Bachmann



echo "<p>\n"; 

// ANFANG OUTPUT 

$imagedir="CMS_VALUE[2]"; 
$thumbnails="CMS_VALUE[3]"; 
$imagetypes=explode(";","CMS_VALUE[4]"); 
$rows="CMS_VALUE[6]"; 
$cols="CMS_VALUE[5]"; 

$thb_x_size="CMS_VALUE[7]"; 
$thb_y_size="CMS_VALUE[8]"; 

$image_idcat="CMS_VALUE[0]"; 
$image_idside="CMS_VALUE[1]"; 

$im_path="CMS_VALUE[9]"; 

//-- config ende ------------------------------------- 

function is_image($filename,$typearray) { 
  reset($typearray); 
  while($val=each($typearray)) { 
     if (strstr($filename,$val[value])!==false) { 
       return true; 
     } 
  } 
} 


// verkleinert ein Bild auf die angegebene Breite (bei Querformat) oder Höhe (bei Hochformat) 
// Seitenverhältnisse werden beibehalten 
function resizeImageGD($sourceFile, $targetFile, $newwidth=50, $newheight=50){ 
   $source = ImageCreateFromJpeg($sourceFile); 
   $width  = ImageSx($source); 
   $height = ImageSy($source); 

   if ($width > $height){ // Querformat 
      $newheight = $height*($newwidth/$width); 
   }else{ // Hochformat 
      $newwidth  = $width*($newheight/$height); 
   } 

   $target = ImageCreateTrueColor($newwidth,$newheight); 
   // ÄNDERUNG vgl. Forums-Beitrag imagecopyresized ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 
   imagecopyresampled ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 

   ImageJPEG($target,$targetFile,100); 
} 



//-- functions ende ---------------------------------- 

if (!isset($mmstart)) { 
  $mmstart=0; 
} 

// Anzeige eines Bildes oder Übersicht? 

if ($subfile!="") {

//Wenn neuer Kommentar, dann in Datenbank einfügen
if(isset($_POST["text"] )){ 
$sql ="Insert INTO bild VALUES(NULL,'".$subfile."','".$_POST["text"]."')";
$db->query($sql);
$_POST["text"] ="";
}


// Bild anzeigen 
echo "<left><a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"javascript:history.back(-3)\">zurück</a></left>"; 
echo "<br>"; 
echo "<img src=\"$subfile\"><br>"; 
$sql ="Select text FROM bild WHERE pfad='$subfile'";

//Kommentar anzeigen
$db->query($sql);
while ($db->next_record()) {
echo" ".$db->f("text")."<br>";
}


//Reoladlink erstellen
$reload=$sess->url("client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".$subfile);

//Formular für Kommentareingabe:
echo"
<form name='form1' method='post' action='".$PHP_SELF."?".$reload."'>
  <p>Text Eintragen: 
    <input type='text' name='text'>
  </p>
  <p>
    <input type='submit' name='Submit' value='Abschicken'>
  </p>
</form>";
 
echo "<left><a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"javascript:history.back(-3)\">zurück</a></left>"; 

} else { 
// Gallery anzeigen 

$handle=opendir($imagedir); 

echo "<table>"; 
$n=0; 
$filearray=Array(); 
while (false !== ($file = readdir($handle))) { 
        if ($file != "." && $file != ".." && is_image($file,$imagetypes)) { 
             $filearray[]=$file; 
        } 
} 

reset($filearray); 

// skip images... 
for ($n=0;$n<$mmstart;$n++) 
  $ffile=each($filearray); 
$n=0; 
while ($ffile=each($filearray)) { 
             $file=$ffile[value]; 
             // generate thumbnail, if nessesairy. Now THIS is fun :) 
             // natuerlich nur, wenn imagemagick vorhanden ist... 
            if (!file_exists($thumbnails."/thb_".$file) ) { 
               if ($im_path!="") { 
                 $cmd=$im_path."/convert -scale ".$thb_x_size."x".$thb_y_size." ".$imagedir."/".$file." ".$thumbnails."/thb_".$file; 

                 exec($cmd); 
                 // nochmal prüfen! 
                 $thumbnail=file_exists($thumbnails."/thb_".$file); 
                } else{ 
                 // Bilder mit GD verkleinern 
             @ini_set("max_execution_time", 120); 
                 @resizeImageGD($imagedir."/".$file, $thumbnails."/thb_".$file, $thb_x_size,$thb_y_size); 
                 $thumbnail=file_exists($thumbnails."/thb_".$file); 
                } 
            } else 
              $thumbnail=true; 
            if ($n%$cols==0) 
              echo "<tr>\n"; 
            if ($image_idcat!=0) 
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcatside=$image_idcat&subfile=".rawurlencode($imagedir."/".$file)); 
            else 
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".rawurlencode($imagedir."/".$file)); 
            echo "<td valign=\"middle\" align=\"center\" width=\"$thb_x_size\" height=\"$thb_y_size\"><a href=\"$url\">".($thumbnail ? "<img src=\"$thumbnails/thb_$file\" border=\"0\">":"$file")."</a></td>\n"; 
            $n++; 
            if ($n%$cols==0) 
              echo "</tr>\n"; 


        // nur solange wie's not tut... 
        if ($n>=$rows*$cols) 
          break; 
    } 
echo "<tr> <td colspan=\"$cols\" align=\"center\">"; 

if ($mmstart>0) { 
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart-$rows*$cols)); 
  echo "<a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"$url\"> vorherige Bilder...</a>"; 
} 

echo "<span style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\">| zeige Bilder ".($mmstart+1)." - ".($mmstart+$n)." | </span>"; 

if ($n+$mmstart<count($filearray)) { 
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart+$rows*$cols)); 
  echo "<a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"$url\"> weitere Bilder...</a>"; 
} 

echo "</tr>\n"; 
echo "</table>"; 
} // Ende Gallery anzeigen 


echo "</p>"; 
?>
Weiterhin kannst du die aktuelle Seite auf http://www.chrigionline.ch/carina/cms anschauen.
Vielen Dank für deine Unterstützung.

Verfasst: Do 9. Sep 2004, 14:22
von crazy
Danke emergence für deine rasche Antwort. Ich habe history.back mit Paramter ausprobiert. Es funktioniert nicht ganz so wie ich es mir vorstelle. Ich kann zwar mit -2, zwei Seiten zurück springen. Jedoch drei Seiten(-3) oder vier Seiten(-4) zurück funktioniert nicht.

Mein Code zurzeit:

Code: Alles auswählen

<? 

// Bildergalerie 
// Imageresize über ImageMagick *ODER* GD 
// Version: 15.01.2004 
// Kommenatrversion 9.9.04
// 
// Author: Large Green Wood  vgl. http://www.contenido.de/front_dev/upload/1ImageGal.txt 
// Abgeändert mit Kommentar Christian Bachmann



echo "<p>\n"; 

// ANFANG OUTPUT 

$imagedir="CMS_VALUE[2]"; 
$thumbnails="CMS_VALUE[3]"; 
$imagetypes=explode(";","CMS_VALUE[4]"); 
$rows="CMS_VALUE[6]"; 
$cols="CMS_VALUE[5]"; 

$thb_x_size="CMS_VALUE[7]"; 
$thb_y_size="CMS_VALUE[8]"; 

$image_idcat="CMS_VALUE[0]"; 
$image_idside="CMS_VALUE[1]"; 

$im_path="CMS_VALUE[9]"; 

//-- config ende ------------------------------------- 

function is_image($filename,$typearray) { 
  reset($typearray); 
  while($val=each($typearray)) { 
     if (strstr($filename,$val[value])!==false) { 
       return true; 
     } 
  } 
} 


// verkleinert ein Bild auf die angegebene Breite (bei Querformat) oder Höhe (bei Hochformat) 
// Seitenverhältnisse werden beibehalten 
function resizeImageGD($sourceFile, $targetFile, $newwidth=50, $newheight=50){ 
   $source = ImageCreateFromJpeg($sourceFile); 
   $width  = ImageSx($source); 
   $height = ImageSy($source); 

   if ($width > $height){ // Querformat 
      $newheight = $height*($newwidth/$width); 
   }else{ // Hochformat 
      $newwidth  = $width*($newheight/$height); 
   } 

   $target = ImageCreateTrueColor($newwidth,$newheight); 
   // ÄNDERUNG vgl. Forums-Beitrag imagecopyresized ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 
   imagecopyresampled ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 

   ImageJPEG($target,$targetFile,100); 
} 



//-- functions ende ---------------------------------- 

if (!isset($mmstart)) { 
  $mmstart=0; 
} 

// Anzeige eines Bildes oder Übersicht? 

if ($subfile!="") {

//Wenn neuer Kommentar, dann in Datenbank einfügen
if(isset($_POST["text"] )){ 
$sql ="Insert INTO bild VALUES(NULL,'".$subfile."','".$_POST["text"]."')";
$db->query($sql);
$_POST["text"] ="";
}


// Bild anzeigen 
echo "<left><a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"javascript:history.back(-3)\">zurück</a></left>"; 
echo "<br>"; 
echo "<img src=\"$subfile\"><br>"; 
$sql ="Select text FROM bild WHERE pfad='$subfile'";

//Kommentar anzeigen
$db->query($sql);
while ($db->next_record()) {
echo" ".$db->f("text")."<br>";
}


//Reoladlink erstellen
$reload=$sess->url("client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".$subfile);

//Formular für Kommentareingabe:
echo"
<form name='form1' method='post' action='".$PHP_SELF."?".$reload."'>
  <p>Text Eintragen: 
    <input type='text' name='text'>
  </p>
  <p>
    <input type='submit' name='Submit' value='Abschicken'>
  </p>
</form>";
 
echo "<left><a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"javascript:history.back(-3)\">zurück</a></left>"; 

} else { 
// Gallery anzeigen 

$handle=opendir($imagedir); 

echo "<table>"; 
$n=0; 
$filearray=Array(); 
while (false !== ($file = readdir($handle))) { 
        if ($file != "." && $file != ".." && is_image($file,$imagetypes)) { 
             $filearray[]=$file; 
        } 
} 

reset($filearray); 

// skip images... 
for ($n=0;$n<$mmstart;$n++) 
  $ffile=each($filearray); 
$n=0; 
while ($ffile=each($filearray)) { 
             $file=$ffile[value]; 
             // generate thumbnail, if nessesairy. Now THIS is fun :) 
             // natuerlich nur, wenn imagemagick vorhanden ist... 
            if (!file_exists($thumbnails."/thb_".$file) ) { 
               if ($im_path!="") { 
                 $cmd=$im_path."/convert -scale ".$thb_x_size."x".$thb_y_size." ".$imagedir."/".$file." ".$thumbnails."/thb_".$file; 

                 exec($cmd); 
                 // nochmal prüfen! 
                 $thumbnail=file_exists($thumbnails."/thb_".$file); 
                } else{ 
                 // Bilder mit GD verkleinern 
             @ini_set("max_execution_time", 120); 
                 @resizeImageGD($imagedir."/".$file, $thumbnails."/thb_".$file, $thb_x_size,$thb_y_size); 
                 $thumbnail=file_exists($thumbnails."/thb_".$file); 
                } 
            } else 
              $thumbnail=true; 
            if ($n%$cols==0) 
              echo "<tr>\n"; 
            if ($image_idcat!=0) 
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcatside=$image_idcat&subfile=".rawurlencode($imagedir."/".$file)); 
            else 
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".rawurlencode($imagedir."/".$file)); 
            echo "<td valign=\"middle\" align=\"center\" width=\"$thb_x_size\" height=\"$thb_y_size\"><a href=\"$url\">".($thumbnail ? "<img src=\"$thumbnails/thb_$file\" border=\"0\">":"$file")."</a></td>\n"; 
            $n++; 
            if ($n%$cols==0) 
              echo "</tr>\n"; 


        // nur solange wie's not tut... 
        if ($n>=$rows*$cols) 
          break; 
    } 
echo "<tr> <td colspan=\"$cols\" align=\"center\">"; 

if ($mmstart>0) { 
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart-$rows*$cols)); 
  echo "<a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"$url\"> vorherige Bilder...</a>"; 
} 

echo "<span style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\">| zeige Bilder ".($mmstart+1)." - ".($mmstart+$n)." | </span>"; 

if ($n+$mmstart<count($filearray)) { 
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart+$rows*$cols)); 
  echo "<a style=\"font-family: Arial, Helvetica, sans-serif; font-size: 12px;	color: #879779;\" href=\"$url\"> weitere Bilder...</a>"; 
} 

echo "</tr>\n"; 
echo "</table>"; 
} // Ende Gallery anzeigen 


echo "</p>"; 
?>
Weiterhin kannst du die aktuelle Seite auf http://www.chrigionline.ch/carina/cms anschauen.
Vielen Dank für deine Unterstützung.

Verfasst: Do 9. Sep 2004, 14:25
von kummer
warum nimmst du denn als text nicht einfach die angaben aus der datenbank, die im backend sowieso schon gepflegt werden? man kann ja im backend zu jeder datei noch eine beschreibung angeben. man bräuchte auf diese weise die angaben nicht mehrmals zu pflegen (einsprachige seite vorausgesetzt).

Verfasst: Do 9. Sep 2004, 14:28
von crazy
An welcher Stelle wird dis fest gelegt? Wenn du weisst wie wird dies dort festgelegt?
Gruss cray

Verfasst: Do 9. Sep 2004, 14:36
von kummer
in der tabelle _upl findest du alle hochgeladenen dokumente. wenn du eine beschreibung angegeben hast, findet sich diese in der spalte 'description'.

aber wie gesagt, funktioniert das ganze natürlich nur bei einsprachigkeit. wenn mehrsprachigkeit gefordert ist, eigent sich eine solche lösung natürlich nicht.

Verfasst: Do 9. Sep 2004, 14:40
von crazy
Die Bilder werden eben per FTP herraufgeladen. Funktioniert es dann trotzdem? Höchstwahrscheinlich wird es auch einmal Mehrsprachig. Ich bleiebe höchstwahrscheinlich bei meiner Methode. Wobei du recht hast: Wenn es natürlich schon etwas gibt sollte man es nicht neu erfinden.
Gruss crazy

Verfasst: Do 9. Sep 2004, 14:41
von crazy
Die Bilder werden eben per FTP herraufgeladen. Funktioniert es dann trotzdem? Höchstwahrscheinlich wird es auch einmal Mehrsprachig. Ich bleiebe höchstwahrscheinlich bei meiner Methode. Wobei du recht hast: Wenn es natürlich schon etwas gibt sollte man es nicht neu erfinden.
Gruss crazy

Verfasst: Do 9. Sep 2004, 14:43
von kummer
wie's aussieht, wenn der upload mit ftp erfolgt, kann ich dir offengestanden nicht sagen. das habe ich noch gar nicht ausprobiert. möglicherweise gibt es eine funktion, die es erlaubt, hochgeladene bilder in die db zu importieren. aber wüsste wohl timo bescheid.

Verfasst: Do 9. Sep 2004, 14:52
von crazy
Mein grösstes Problem liegt jedoch beim zurück Button. Ich möchte mich eigentlich zuerst darum kümmern, dass es läuft. Hast du vielleicht dafür eine Lösung?

Verfasst: Do 9. Sep 2004, 15:08
von kummer
auf javascript darfst du dich in diesen fällen sowieso nie verlassen. du musst abhandeln, ob der eintrag bereits erfolgt ist oder nicht.

wenn ein bild bereits einen eintrag aufweist, muss ein update und sonst ein insert vorgenommen werden.

bei applikationen habe ich das auch schon wie folgt gelöst:

(1) bei aufruf einer maske für die eingabe eines neuen eintrages wird eine sessionvariable auf true gesetzt. z.b.

Code: Alles auswählen

$_SESSION['newentry'] = true;
(2) nach dem absenden wird der eintrag in die datenbank gespeichert unter der bedingung, dass $_SESSION['newentry'] true ist. anschliessend wird die sessionvariable wieder gelöscht.

Code: Alles auswählen

unset($_SESSION['newentry']);
(3) bei einem reload wird die sessionvariable nicht vorhanden sein und das insert erfolgt nicht ein zweites mal.

Verfasst: Do 9. Sep 2004, 15:11
von emergence
ach so das bleibt ja alles auf einer seite...

nimm für den zurückbutton etwas wie

Code: Alles auswählen

echo "<a href=\"front_content.php?idcat=$idcat&idart=$idart\">zurück</a>";
oder

Code: Alles auswählen

echo "<a href=\"front_content.php?idcatart=$idcatart\">zurück</a>";

Verfasst: Do 9. Sep 2004, 15:41
von crazy
He emergence,
Variante 1 funktioniert! Super! Danke! Es würde mich jedoch noch intressieren was idcat=$idcat&idart=$idart bedeutet?
Jetzt muss eigentlich nur noch etwas verbessert werden. Nach Einfügen eines Kommentars sollte bei reloaden nicht nochmals der Kommentar eingefügt werden. Simpel wäre es nicht den selben Kommentar und selben Pfad zu erlauben. Jedoch könnte es sein, dass zweimal der selbe Kommentar zu einem Bild geschrieben wird. Villeicht hast du da auch noch einen guten Einfall.
Gruss crazy

Verfasst: Do 9. Sep 2004, 15:47
von emergence