Thread Verfasser: Catzenjaeger
Thread ID: 1043
Thread Info
Es gibt 13 Beiträge zu diesem Thema, und es wurde 6887 Mal angesehen.  Ausserdem wurden Dateien angehängt.
 Thema drucken
CARUSELL CODE umbauen
Catzenjaeger
Hola,

habe hier einen Bootstrap Carusel code und wollte mal fragen ob man den so umbauen kann das das Bilder aus einer DB Tabelle zeigen kann. Also nicht die festen Bilder wie im Code sondern alle Bilder nach bestimmten Kriterien aus einer Tabelle. Ich weiß nicht ich das umbauen kann. Bin gerade dabei mich mit Bootstrap zu beschäftigen aber ich habs noch nicht so drauf . Vielleicht kann jemand von den Profis mal schauen

Code 

<div id="myCarousel" class="carousel slide" data-ride="carousel">
  <!-- Indicators -->
  <ol class="carousel-indicators">
    <li data-target="#myCarousel" data-slide-to="0" class="active"></li>
    <li data-target="#myCarousel" data-slide-to="1"></li>
    <li data-target="#myCarousel" data-slide-to="2"></li>
    <li data-target="#myCarousel" data-slide-to="3"></li>
  </ol>

  <!-- Wrapper for slides -->
  <div class="carousel-inner" role="listbox">
    <div class="item active">
      <img src="img_chania.jpg" alt="Chania">
    </div>

    <div class="item">
      <img src="img_chania2.jpg" alt="Chania">
    </div>

    <div class="item">
      <img src="img_flower.jpg" alt="Flower">
    </div>

    <div class="item">
      <img src="img_flower2.jpg" alt="Flower">
    </div>
  </div>

  <!-- Left and right controls -->
  <a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>



http://www.w3schools.com/bootstrap/bo...rousel.asp

auslesen tue ich meinen Bilder so:

Code 

$figure_id = $data['figure_id'];
   
      $image_count = dbcount("(figure_images_image_id)", DB_FIGURE_IMAGES, "figure_images_figure_id='$figure_id'");
   
    if ($image_count) {
        echo "<div class='row'>\n";
        $resultimage = dbquery("SELECT * FROM ".DB_FIGURE_IMAGES." WHERE figure_images_figure_id='$figure_id'");
                while ($image_data = dbarray($resultimage)) {

            $image_thumb = get_figure_image_path($image_data['figure_images_image'], $image_data['figure_images_thumb']);
            if (!$image_thumb) {
                $image_thumb = IMAGES."imagenotfound70.jpg";
            }
            echo "<div class='col-xs-12 col-sm-4'>\n";
           

            echo "<div class='' style='height: 250px '>";
            echo "<img class='img-responsive img-thumbnail' src='".$image_thumb."' alt='".$locale['figure_588']."' />\n";
            echo "</div>";

            echo "</div>\n";

        }

        echo "</div>\n";

    }


Bearbeitet von Catzenjaeger am 12.08.2016 um 08:11
 
David
Versuche es mal so .. aber Achtung! ist ungetestet ..

Code 

// Figure ID
$figure_id = $data['figure_id'];

// Alle Bilder zählen
$image_count = dbcount("(figure_images_image_id)", DB_FIGURE_IMAGES, "figure_images_figure_id='".$figure_id."'");

// Insofern Bilder vorhanden sind, Ausgabe beginnen
if ($image_count) {
   
   // Standard Variablen
   $indicators = "";
   $images     = "";
   $i          = 0;
   
   // Bilder auslesen
   $resultimage = dbquery("SELECT * FROM ".DB_FIGURE_IMAGES." WHERE figure_images_figure_id='".$figure_id."'");
   while ($image_data = dbarray($resultimage)) {

      // Indikator einfügen
      $indicators .= "<li data-target='#myCarousel' data-slide-to='".$i."'".($i == 0 ? " class='active'" : "")."></li>\n";
   
      // Bild auslesen
      $image_thumb = get_figure_image_path($image_data['figure_images_image'], $image_data['figure_images_thumb']);
      if (!$image_thumb) {
         $image_thumb = IMAGES."imagenotfound70.jpg";
      }
      
      // Bild einfügen
      $images .= "<div class='item".($i == 0 ? " active" : "")."'>\n";
         $images .= "<img src='".$image_thumb."' alt='".$locale['figure_588']."' />\n";
      $images .= "</div>\n";

      // Counter erhöhen
      $i++;
   }
   
   // Carousel anzeigen
   echo "<div id='myCarousel' class='carousel slide' data-ride='carousel'>\n";
      echo "<ol class='carousel-indicators'>\n";
         echo $indicators;
      echo "</ol>\n";
      echo "<div class='carousel-inner' role='listbox'>\n";
         echo $images;
      echo "</div>\n";
      echo "<a class='left carousel-control' href='#myCarousel' role='button' data-slide='prev'>\n";
         echo "<span class='glyphicon glyphicon-chevron-left' aria-hidden='true'></span>\n";
         echo "<span class='sr-only'>Previous</span>\n";
      echo "</a>\n";
      echo "<a class='right carousel-control' href='#myCarousel' role='button' data-slide='next'>\n";
         echo "<span class='glyphicon glyphicon-chevron-right' aria-hidden='true'></span>\n";
         echo "<span class='sr-only'>Next</span>\n";
      echo "</a>\n";
   echo "</div>\n";
   
   // Variablen löschen
   unset($indicators, $images, $i);
}


Liebe Grüße, David Smile

PHP-Fusion Österreich
 
Catzenjaeger
klasse vielen Dank funktioniert macht noch aber bisschen Zicken - trotzdem du bist mein Held des Tages -- komme übrigens gerade aus Österreich ... war in Eichenberg in der Nähe des Pfänder am Bodensee :)

ich habe das Bild noch zentriert und den Code so erweitert das man bei klick auf das Thumb das Originale dazu öffnen kann.

Wo finde ich eigentlich die Seetings dazu in php Fusion?
Das Slideshow Bild ist bissel oben und unten abgeschnitten das würde ich ändern wollen eventuell

Fehler

templates/template_render_figure_items.php
/test/infusions/figurelib/figures.php?figure_cat_id=2&figure_id=2
Undefined variable: figure_images_thumb
Line: 775

templates/template_render_figure_items.php
/test/infusions/figurelib/figures.php?figure_cat_id=2&figure_id=2
Missing argument 2 for get_figure_image_path(), called in /var/www/vhosts/aliencollectors.com/httpdocs/test/infusions/figurelib/templates/template_render_figure_items.php on line 108 and defined
Line: 701


templates/template_render_figure_items.php
/test/infusions/figurelib/figures.php?figure_cat_id=2&figure_id=2
Missing argument 2 for get_figure_image_path(), called in /var/www/vhosts/aliencollectors.com/httpdocs/test/infusions/figurelib/templates/template_render_figure_items.php on line 137 and defined
Line: 773

Code 


// Figure ID
$figure_id = $data['figure_id'];

// Alle Bilder zählen
$image_count = dbcount("(figure_images_image_id)", DB_FIGURE_IMAGES, "figure_images_figure_id='".$figure_id."'");

// Insofern Bilder vorhanden sind, Ausgabe beginnen
if ($image_count) {
   
   // Standard Variablen
   $indicators = "";
   $images     = "";
   $i          = 0;
   
   // Bilder auslesen
   $resultimage = dbquery("SELECT * FROM ".DB_FIGURE_IMAGES." WHERE figure_images_figure_id='".$figure_id."'");
   while ($image_data = dbarray($resultimage)) {

      // Indikator einfügen
      $indicators .= "<li data-target='#myCarousel' data-slide-to='".$i."'".($i == 0 ? " class='active'" : "")."></li>\n";
   
      // Bild auslesen
      $image_thumb = get_figure_image_path($image_data['figure_images_image'], $image_data['figure_images_thumb']);
      if (!$image_thumb) {
         $image_thumb = IMAGES."imagenotfound70.jpg";
      }
    
     $image_image = get_figure_image_path($image_data['figure_images_image']);
      if (!$image_image) {
         $image_image = IMAGES."imagenotfound70.jpg";
      }
       
      $images .= "<div class='item".($i == 0 ? " active" : "")."'>\n";
         $images .= "<center><a href='".$image_image."'  height='100%' width='100%' alt='".$data['figure_title']."'><img src='".$image_thumb."' alt='".$locale['figure_588']."' /></a>\n";
      $images .= "</div>\n";

      // Counter erhöhen
      $i++;
   }
   
   // Carousel anzeigen
   echo "<div id='myCarousel' class='carousel slide' data-ride='carousel'>\n";
      echo "<ol class='carousel-indicators'>\n";
         echo $indicators;
      echo "</ol>\n";
      echo "<div class='carousel-inner' role='listbox'>\n";
         echo $images;
      echo "</div>\n";
      echo "<a class='left carousel-control' href='#myCarousel' role='button' data-slide='prev'>\n";
         echo "<span class='glyphicon glyphicon-chevron-left' aria-hidden='true'></span>\n";
         echo "<span class='sr-only'>Previous</span>\n";
      echo "</a>\n";
      echo "<a class='right carousel-control' href='#myCarousel' role='button' data-slide='next'>\n";
         echo "<span class='glyphicon glyphicon-chevron-right' aria-hidden='true'></span>\n";
         echo "<span class='sr-only'>Next</span>\n";
      echo "</a>\n";
   echo "</div>\n";
   
   // Variablen löschen
   unset($indicators, $images, $i);
}




function get_figure_image_path($figure_images_image, $figure_images_thumb, $hiRes = FALSE) {
    if (!$hiRes) {
        if ($figure_images_thumb && file_exists(THUMBS_FIGURES.$figure_images_thumb)) {
            return THUMBS_FIGURES.$figure_images_thumb;
        }
        if ($figure_images_thumb && file_exists(IMAGES_FIGURES.$figure_images_thumb)) {
            return IMAGES_FIGURES.$figure_images_thumb;
        }
        if ($figure_images_image && file_exists(IMAGES_FIGURES.$figure_images_image)) {
            return IMAGES_FIGURES.$figure_images_image;
        }
    } else {
        if ($figure_images_image && file_exists(IMAGES_FIGURES.$figure_images_image)) {
            return IMAGES_FIGURES.$figure_images_image;
        }
        if ($figure_images_thumb && file_exists(IMAGES_FIGURES.$figure_images_thumb)) {
            return IMAGES_FIGURES.$figure_images_thumb;
        }
        if ($figure_images_thumb && file_exists(THUMBS_FIGURES.$figure_images_thumb)) {
            return THUMBS_FIGURES.$figure_images_thumb;
        }
    }

}

Catzenjaeger hat folgende Datei angehängt:
Du hast nicht die Berechtigung die Anhäge dieses Themas zu sehen.

Bearbeitet von Catzenjaeger am 12.08.2016 um 10:51
 
David
Mahlzeit :)

Hehehe na Eichenberg ist noch sehr weit weg von mir .. so ca. 7 Stunden :P

1.) Welche Einstellungen meinst du?
2.) Wie meinst du mit abgeschnitten?
3.) Die Fehlermeldung beruht meiner Meinung nach an deinen eingefügten Code

Code 

$image_image = get_figure_image_path($image_data['figure_images_image']);
      if (!$image_image) {
         $image_image = IMAGES."imagenotfound70.jpg";
      }


Wie Ja die Fehlermeldung sagt, fehlt in der Funktion die 2te Angabe.
Liebe Grüße, David Smile

PHP-Fusion Österreich
 
Catzenjaeger
1.) Welche Einstellungen meinst du?
2.) Wie meinst du mit abgeschnitten?
3.) Die Fehlermeldung beruht meiner Meinung nach an deinen eingefügten Code

1) na die generellen Seetings die diesen Slider/Slidesow so haben wie größe des Bildes, effekte usw.

2.) na vom Bild fehlt oben und unten ein Stückchen siehe Foto

3.) hmnn welche 2. Angabe .. ich wollte mit diesen code einfach das orgianlbild holen und das dann bei Klick auf das Thumb in der slideshow anzeigen lassen. Klappen tuts ja wie ich das so sehe :)

http://aliencollectors.com/test/infus...igure_id=2

ich habe es mal so gemacht

$image_image = get_figure_image_path($image_data['figure_images_image'], $image_data['figure_images_image']);
if (!$image_image) {
$image_image = IMAGES."imagenotfound70.jpg";
}
 
David
1.) Dazu gibt es in PHP-Fusion keine Einstellungen.
2.) Das Bild ist abgeschnitten, weil es ja bereits schon beim Thumb fehlt.
3.) Das dürfte Ja nun funktionieren oder?
Liebe Grüße, David Smile

PHP-Fusion Österreich
 
Catzenjaeger
1.) Dazu gibt es in PHP-Fusion keine Einstellungen.
2.) Das Bild ist abgeschnitten, weil es ja bereits schon beim Thumb fehlt.
3.) Das dürfte Ja nun funktionieren oder?

1.) Kann man das nicht modifizieren? Also Größe, Effekte oder sowas?
2.) uiiii wieso das denn ... dachte thumbs sind nur verkleinerte Bilder. Ich habe in den Settings das hier

// ['admin_figurelib_settings.php_008'] = "Thumb ratio:";
echo form_select('figure_thumb_ratio', $locale['admin_figurelib_settings.php_008'], $fil_settings['figure_thumb_ratio'], array("options" => $thumb_opts));

allerdings nirgends geunden was es bewirken soll bzw wo es greift. ich hatte aus den News von Php Fusion wo ich das abgeschaut habe.

3.) jo schint zu gehen -- mal sehen ob die Meldungen nicht mehr kommen Smile

DANKE für deine Hilfe

PS: bin jetzt mit der Infusion zu 90 % fertig. Es gibt noch 2 größere Probleme dann sollte alles laufen.
a.) ich habe es nicht hinbekommen das die Bilder aus der DB und dem Folder gelöscht werden wenn ich im Adminbereich eine Figure lösche
b.) die pagenav auf meiner mycollection Seite geht nicht. Bei klick auf den page nav button wird nicht weitergeschalten weil die ID nicht übergeben wird.
 
David
1.) Ohja, per CSS.
2.) Möglicherweise in den Thumb Einstellungen etwas fehlerhaft?
3.) Ok

----

a.) Wieso nicht?
b.) Wieso nicht?
Liebe Grüße, David Smile

PHP-Fusion Österreich
 
Catzenjaeger
Zitat: David schrieb:

1.) Ohja, per CSS.
2.) Möglicherweise in den Thumb Einstellungen etwas fehlerhaft?
3.) Ok

----

a.) Wieso nicht?
b.) Wieso nicht?


1.) wo finde ich den diese css ?
2.) ah meinst du das wie auf dem Bild? stimmt dort habe ich ja dem Thumb fixe werte gegeben. Oder wird das woanders gemacht?

a.) na weils nicht geht Sad --> https://github.com/Catzenjaeger/Figur...urelib.php
b.) keine Ahnung finde ja den Fehler nicht ... die Url wird übergeben aber ohne die figure_id wenn die da wäre würde es auch gehen --> https://github.com/Catzenjaeger/Figur.../issues/39
 
David
1.) themes/deintheme/styles.css und dort neue Style-Klassen erstellen.
2.) Meine die Einstellungen, welche beim Upload die Bildgröße etc. bestimmen.
a.) Zeile 118 und 130 ".intval($figure_id)." durch ".intval($_GET['figure_id'])." ersetzten.
b.) Suche ca Zeile 207

Code 

makepagenav($_GET['rowstart'], $asettings['figure_per_page'], $max_rows, 3, INFUSIONS."figurelib/figures.php?figure_id=".$_GET['figure_id']."&amp;") 


Ersetzte durch:

Code 

makepagenav($_GET['rowstart'], $asettings['figure_per_page'], $max_rows, 3, INFUSIONS."figurelib/mycollection.php?") 


Liebe Grüße, David Smile

PHP-Fusion Österreich
 
Catzenjaeger
a.) ist leider nicht die Lösung ... habe beide stellen abgeändert aber beim löschen iner figure bleiben die Bilder im Ordner und in der DB Tabelle Images

b.) teste ich aber mit deiner Angabe stimmt was nicht .. zeile 207
in zeile 171 ist das einzige vorkommen
$info['page_nav'] = $max_rows > $fil_settings['figure_per_page'] ? makepagenav($_GET['rowstart'], $fil_settings['figure_per_page'], $max_rows, 3, INFUSIONS."figurelib/figures.php?figure_id=".$_GET['figure_id']."&amp;") : 0;
 
David
b.) mycollection.php Zeile 207 steht der Code von mir. Betrifft ja laut der Issue die mycollection.php

Betreffend a.) wäre eine Demo cool Wink
Liebe Grüße, David Smile

PHP-Fusion Österreich
 
Catzenjaeger
a.) Demo gibts hier: www.aliencollectors.com/test
b.) page nav funzt nicht auch nach ändern :(

Zeile sieht jetzt so aus:
Zitat: $info['page_nav'] = $max_rows > $fil_settings['figure_per_page'] ? makepagenav($_GET['rowstart'], $asettings['figure_per_page'], $max_rows, 3, INFUSIONS."figurelib/figures.php?figure_id=".$_GET['figure_id']."&amp;") : 0;


aber wie gesagt geht leider immer noch nicht
Bearbeitet von Catzenjaeger am 12.08.2016 um 13:19
 
Springe ins Forum: