MSQL zu PDO Fragen zu Formatierung!

DualityMind schrieb:
Leider funktioniert es nicht wie es sollte. ... funktioniert gar nichts ... kann er anscheinend nichts anfangen ... Wieso funktioniert das mit dem "picture_id" und "ext" nicht ... nichts läuft
Super präzise Fehlerbeschreibung. Demnach liegt der Fehler in Zeile 9.
Mal im Ernst, eine genauere Fehlerbeschreibung (inkl. das posten der Warn- und Fehlermeldungen) würde schon helfen. Auch solltest du dir ein paar echos einbauen, um zu gucken wie die Inhalte aussehen, oder gleich einen Debugger nutzen.

Wenn du mal eine längere Pause gemacht hast (d.h. drüber Schlafen) verlgeichst du mal Zeile 14 und 17.
Dann solltest du dir noch dringends überlegen, ob du deine Variablen nicht etwas "sprechender" benennen solltest.
 
  • Gefällt mir
Reaktionen: Sgt_H4rtman
Hallo

Hab das Problem gefunden. Die Tabelle "pt_pictureandroid" ist nicht in der Datenbank :-((

Benutze seit kurzem "Xampp" um die Webseite zu Editieren.

Werde nochmals die Datenbank aufspielen müssen, dann sollte es hoffentlich gehen :-)

Wenn es an dem gelegen ist, kann ich es dann nochmals per INNER JOIN versuchen, hoffe es klappt :heul::heul::heul:

Danke an Alle. Das nächste Problem wartet sicher schon. Wenn es geklappt hat, melde ich mich nochmals zurück :-)

LG
 
DualityMind schrieb:
Hab das Problem gefunden. Die Tabelle "pt_pictureandroid" ist nicht in der Datenbank :-((
Also nichts, was man innerhalb von ein paar Minuten per PDO-Fehlerbehandlung hätte finden können.
Oder wie auch schon genannt wurde, das sql per Hand auszuführen.
Du sagst es ja selbst mit "herumgeputscht". Programmierung erfordert eine gewisse strukturierte Vorgehensweise, Tipps hast du ja schon mehrere bekommen.
 
  • Gefällt mir
Reaktionen: Sgt_H4rtman
Darlis schrieb:
Wenn du mal eine längere Pause gemacht hast (d.h. drüber Schlafen) verlgeichst du mal Zeile 14 und 17.
Dann solltest du dir noch dringends überlegen, ob du deine Variablen nicht etwas "sprechender" benennen solltest

LOL das ist mir gestern gar nicht aufgefallen. Generell scheint da eine Menge im Argen zu sein. Ich dachte er hätte wenigstens die SQL Strings und Variablen im Original belassen.
 
Hallo Alle

Jetzt funktioniert es wie es sollte. Zwar ohne "INNER JOIN" aber Hauptsache es funktioniert jetzt zumindest.

PHP:
<?
   
$time = time();

$stmt = $pdo->prepare("SELECT * FROM pt_android where exp_date < :time ORDER BY exp_date DESC LIMIT 5");
$stmt1 = $pdo->prepare( "SELECT picture_id, freegame_id, ext FROM pt_pictureandroid WHERE freegame_id = :freegame_id order by freegame_id DESC LIMIT 1");
$stmt->execute([':time' => $time]);

while ($row = $stmt->fetch(\PDO::FETCH_ASSOC))
{
   
   
$stmt1->execute([':freegame_id' => $row['freegame_id']]);
$picnr = $stmt1->fetch(\PDO::FETCH_ASSOC);

   
$tmp = getimagesize("../artikel/thumbnail/$picnr[picture_id].jpg");


echo  "<table cellpadding=0 cellspacing=0 border=0><tr><td style=padding-top:8px;padding-bottom:8px;padding-left:8px;padding-right:8px; align=\"left\" colspan=4 bgcolor=DFEFFF><font size=\"1\"><img src=\"../artikel/thumbnail/{$picnr['picture_id']}.jpg\" align=center valign=middle height=100 width=140  class=blackbox border=0>";
   
   
echo  "</td><td style=padding-top:8px; bgcolor=DFEFFF colspan=2 valign=top align=left>";


   
            echo  "<font size=1><a href=\"../artikel_show.php?sectio={$row['section_id']}&an={$row['freegame_id']}\" class=customfont style=font-size:15px;font-weight:bolder;text-decoration:none;>";

             echo  substr( $row['subject'], 0, 60 );
            if( strlen( $row['subject'] ) > 60 ) echo  "...";
       
            echo  "</a>&nbsp;";
   
            echo  "<a href=\"Artikel_editieren.php?sectio={$row['section_id']}&an={$row['freegame_id']}\" class=customfont style=font-size:15px;font-weight:bolder;text-decoration:underline;color:red;>EDITIEREN</font></a>";
                echo "&nbsp;&nbsp;<font class=customfont style=font-size:13px;color:darkblue;>$row[download_count]&nbsp;Downloads bisher!</font><br>";
       
               echo  "<font class=customfont style=font-size:12px;color:darkblue;>AB ANDROID VERSION:&nbsp;$row[system]<br>Hersteller:&nbsp;$row[hersteller]<br><br>Datei-Groesse:&nbsp;$row[groesse]&nbsp;MB</font>";
       
            echo "</td>";
           

}

$stmt1 = $stmt = null;
?>

Danke an Alle eure Hilfe. Es wird sicher bald ein Neues Problem kommen, werde mich sicher wieder melden :-))).

Gute Nacht :-)

LG
 
HiHo

Habe bereits wieder ein Problem. :-(

Wie schreibe ich diese MySQL Abfrage in PDO um:

Code:
    $result = mysql_query( "SELECT * FROM pt_android WHERE freegame_id=$an" ) or error( mysql_error() );
        $ad = mysql_fetch_array( $result );
        $link= $ad['link'];
$link2=$ad['link2'];
$link3=$ad['link3'];


Habe es so versucht, klappt aber nicht ganz:

Code:
$ad = $pdo->prepare("SELECT * FROM pt_android where freegame_id = :an");
$ad->execute([':freegame_id' => $an]);

Das wichtigste ist das man per $ad die Werte $ad[link], $ad[Hersteller] etc... anzeigt, die die ganze Seite mit $ad[wert] formatiert ist.

Ich möchte nicht alles zu $row umschreiben und möchte das Schema gerne beibehalten :-).

LG
 
Das ist das Problem wenn man nur schnelle Lösungen sucht anstatt die Thematik zu verstehen und das Script von Beginn an richtig schreibt..

Joins verstehen und danach pdo inkl prepared statements durchlesen. Dann scheitert man auch nicht bei 5 zeilen code und wenn doch, kann man immer noch mit einer konkreten Frage ankommen aber nicht erneut mit code im alten schlechten Stil
 
  • Gefällt mir
Reaktionen: abcddcba und Nase
Du musst vor allem mal lernen mehr Details zu liefern. Zum Beispiel
DualityMind schrieb:
Habe es so versucht, klappt aber nicht ganz:
"klappt aber nicht ganz" hat doch null Aussagekraft. Was bedeutet das denn? Kommen Fehler? Wird irgendwas flasch angezeigt? Wird gar nix angezeigt? Funktioniert die SQL Abfrage nativ?

Du musst immer überlegen, niemand hier kennt dein DB Schema noch hat jemand Zugriff auf deine Datenbank. Und niemand hier kann deinen Code ausführen oder erweitern.

Im Normalfall liefert man ein MVCE, wenn nicht dann versucht man wenigstens etwas mehr Infos als "klappt nicht ganz" + Code Snippet zu liefern. Du musst dich mal in die Lage der anderen reindenken.
 
PHP:
$ad = $pdo->prepare("SELECT * FROM pt_android where freegame_id = :an");
$ad->execute([':freegame_id' => $an]);

in Zeile 1 schreibst du :an, in Zeile 2 :freegame_id
bin kein PDO Experte, aber ich glaube das passt nicht ;)

Zudem schreibst du in Post 14#
PHP:
$statement = $pdo->prepare("SELECT pta.freegame_id,pta.exp_date,pta.subject,pta.download_count,pta.hersteller, ptp.picture_id,ptp.freegame_id FROM pt_android as pta INNER JOIN pt_pictureandroid as ptp ON ptp.picture_id WHERE ptp.picture_id = pta.freegame_id ORDER BY exp_date DESC LIMIT 5");
hier ist (ein) Fehler:
Code:
INNER JOIN pt_pictureandroid as ptp ON ptp.picture_id WHERE
nach dem on ptp.picture_id folgt bei dir das where, du musst aber einen Vergleich durchführen. Vermutlich sollte da irgendwie sowas ähnliches wie ptp.picture_id = pta.id_picture stehen ...
 
Zuletzt bearbeitet:
DubZ schrieb:
in Zeile 1 schreibst du :an, in Zeile 2 :freegame_id
bin kein PDO Experte, aber ich glaube das passt nicht ;)

Yep. Er beherrscht nicht mal die Basics von PDO, hält sich aber auch nicht an die Tipps, die ihm hier gegeben werden.
 
Hallo Alle

LoL @Tourgott: "YEP" ein Loser :daumen:

Nun gut. Das andere konnte ich Mittlerweile Lösen, aber jetzt habe ich wieder ein ähnliches Problem mit der
Formatierung :-( !

Hier der Code:


PHP:
// PICTURE - SLIDER - BILD 1
$result1 = $pdo->prepare("SELECT * FROM pt_android where exp_date < $time ORDER BY exp_date DESC LIMIT 0,1");
$id_selekt1 = $result1->fetch(\PDO::FETCH_ASSOC);
$result1->execute([':time' => $time]);

$result2 = $pdo->prepare( "SELECT picture_id, freegame_id, ext FROM pt_pictureandroid WHERE freegame_id = :id_selekt1[freegame_id] order by freegame_id DESC LIMIT 1");
$picnr5 = $result2->fetch(\PDO::FETCH_ASSOC);
$result2 ->execute([':picture_id' => $id_selekt1['picture_id']]);
$getpicture1 =  $picnr5['picture_id'];

Also es geht darum. Ich habe die Tabelle pt_android und dort Liste er die Neuesten Artikel von Neu nach Alt.

Das Bild hole ich dann per "$id_selekt1[freegame_id]", aber es kommt keine Zahl zu picture_id.

Es spuckt nur ".jpg" ohne z.B. "100.jpg".

Mit $getpicture1 = $picnr5[picture_id]; sollte der Wert von $getpicture1 = Zahl von Picture_id :-).

Was mache ich falsch, dass es mir keine Zahl ausspuckt. Auf der Website habe ich alle Picture_id s als fortlaufende Zahlen verwendet ????

Hat jemand Plan Bitte ???

Danke

LG Dualitymind
 
Code:
WHERE freegame_id = :id_selekt1[freegame_id]
Was ist denn das für eine Syntax?
Ich weiß ja auch nicht, ob es Sinn macht, erst die Daten abzuholen und danach die Parameter zu übergeben...
 
Hallo

Jetzt hat es geklappt, musste noch eine "While Schleife" einfügen :))!

Nächstes Problem ist, habe da einen Picture Slider, der jetzt nicht mehr Funktioniert, wie er sollte :-(.

Das 1. Bild zeigt er an, aber der "Previous und Next Image" Button funktioniert nicht mehr.

Kann es sein, dass ich im Javascript des Picture Slider, etwas ändern muss, in PDO ?

Hier ein Beispiel:

PHP:
   // irgendein Datenbankergebnis als Array
        $databaseResult = array( "$getpicture1.jpg","$getpicture2.jpg","$getpicture3.jpg","$getpicture4.jpg","$getpicture5.jpg");
       // das Datenbankergebnis als Json für JavaScript
        $databaseResultJson = json_encode($databaseResult);

        //die Anzahl des Datenbankergebnis
        // "minus 1"; da Arrays bei "0" beginnen
        $totalNumberOfImages = count($databaseResult) - 1;
    $image = $databaseResult[0];


<script>
    // zwei globale Variablen; die erste wird mit PHP gesetzt
    // "images" ist Json; kann wie ein Array verwendet werden
    let images = <?php echo $databaseResultJson; ?>;

    // auch in JS beginnen wir mit dem ersten Bild
    let index = 1;

    function nextImage() {
        // "const"; da wir die Variable "image" nicht im Nachinhein ändern wollen.
        // increaseIndex() gibt den aktuellen Index zurück
        // mit dem Index greifen wir auf das ensprechende Bild im Json zu



        const image = images[increaseIndex()];

       
       
        changeImage(image);
       
       
    }

    function previousImage() {
        const image = images[decreaseIndex()];
        changeImage(image);
    }

    function decreaseIndex() {
        // wir prüfen, ob der Index kleiner null werden würde; das wäre ein Fehler.
        // Also geben wir einfach wieder null zurück; ansonsten zählen wir den Index einen nach unten ("-1").
          if (index == 0)
        {
 
    var subject
var kategorie
var kategorie_nummer
    subject="<?php echo $subject; ?>"

             kategorie_nummer="<?php echo $sectio; ?>"
       
          document.getElementById("url").href = "artikel_show.php?sectio=<?php echo $sectio ?>&an=<?php echo $an ?>";

         document.getElementById("subject").innerHTML = subject;                
             document.getElementById("kategorie").innerHTML = kategorie;              
}

Seht ihr da etwas, was man Umschreiben muss ?

Wäre flott für Kurze Hilfe :-).

Anbei: Das Bild wird per:
PHP:
       <img onclick='nextImage()' src=next.jpg border=0 width=24 height=36 border=0  onmouseout=this.src='next.jpg';   onmouseover=this.src='next2.jpg';></img>

aufgerufen.

LG
 
DualityMind schrieb:
Jetzt hat es geklappt, musste noch eine "While Schleife" einfügen :))!
Das löst genau keinen der Fehler, die in deinem Code stecken.

DualityMind schrieb:
Kann es sein, dass ich im Javascript des Picture Slider, etwas ändern muss, in PDO ?
Liest du auch mal, was du so schreibst? In der 1. Zeile steht dich doch schon, dass der Code unabhängig von PDO ist. Ob der korrekt ist oder nicht, kann ich nicht sagen da die Hälfte fehlt. Wenn das 2 verschiedenen Dateien sind, poste die auch in zwei verschiedenen Code-Boxen.

Browser sind ja sehr fehlertolerant, aber der Browser, der dein <img>-Tag parsen muss tut mir leid. Warum ist es so schwer Code so vernünftig abzukopieren, dass er danach auch den gängigen HTML-Standards entspricht?
 
  • Gefällt mir
Reaktionen: DubZ
@Darlis

Darlis schrieb:
aber der Browser, der dein <img>-Tag parsen muss tut mir leid.

Was kann ich anstelle von "<img>" benutzen, was dann besser ist für den Browser ? (schneller)

Darlis schrieb:
poste die auch in zwei verschiedenen Code-Boxen.

Es ist alles in 1 Datei hier der Code:
PHP:
            <script>
$(document).ready(function() {
  $('#slide1_controls').on('click', 'span', function(){
    $("#slide1_images").css("transform","translateX("+$(this).index() * -450+"px)");
    $("#slide1_controls span").removeClass("selected");
    $(this).addClass("selected");
  });
});
            </script>
<!doctype html>
<html lang="DE">
   
<head>
    <meta charset="UTF-8">
   
</head>

<style>
    .new-slider
    {

    position:relative;
      height:80px;
      width:80px;
background:url(new_slider.png);
            left:356px;
background-color:DFEFFF;
            top:0px;

            z-index:222;

           
background-color:transparent;
   
    }
        .slider-holder
        {
            width: 432px;
            height: 286px;
            background-color: yellow;
            margin-left: auto;
            margin-right: auto;
            margin-top: 0px;
            text-align: center;
            overflow: hidden;
           
        }
       
        .image-holder
        {
            width: 432px;
            background-color: dfefff;
            height: 286px;

            position: relative;
            z-index:101;
           
            -webkit-transition: left 5s;
            -moz-transition: left 5s;
            -o-transition: left 5s;
            transition: left 5s;
           
        }
       
        .slider-image
        {
            float: left;
            margin: 0px;
            padding: 0px;
            position: relative;
        }
       
        #slider-image-1:target ~ .image-holder
        {
            left: 0px;
        }
       
        #slider-image-2:target ~ .image-holder
        {
            left: -800px;
        }
       
        #slider-image-3:target ~ .image-holder
        {
            left: -1600px;
        }
       
        .button-holder
        {
            position: relative;
            top: -20px;
        }
       
        .slider-change
        {
            display: inline-block;
            height: 10px;
            width: 10px;
            border-radius: 5px;
            background-color: brown;
        }
</style>

<?php

$time= time();
$ip = $REMOTE_ADDR;
    $i = 0;
    $next = "-1";
$e = 1;
    // $setpicture = "";


    // PICTURE - SLIDER - BILD 1
$result1 = $pdo->prepare("SELECT * FROM pt_android where exp_date < :time ORDER BY exp_date DESC LIMIT 0,1");
$result2 = $pdo->prepare( "SELECT picture_id, freegame_id, ext FROM pt_pictureandroid WHERE freegame_id = :freegame_id ");
$result1->execute([':time' => $time]);
while ($row = $result1->fetch(\PDO::FETCH_ASSOC))
{
   
$result2->execute([':freegame_id' => $row['freegame_id']]);
$picnr = $result2->fetch(\PDO::FETCH_ASSOC);
$getpicture1 =  $picnr['picture_id'];
$subject =  $row['subject'];
$an = $row['freegame_id'];
$sectio= $row['section_id'];

}


    // PICTURE - SLIDER - BILD 2

$result3 = $pdo->prepare("SELECT * FROM pt_android where exp_date < :time ORDER BY exp_date DESC LIMIT 1,1");
$result4 = $pdo->prepare( "SELECT picture_id, freegame_id, ext FROM pt_pictureandroid WHERE freegame_id = :freegame_id ");
$result3->execute([':time' => $time]);
while ($row = $result3->fetch(\PDO::FETCH_ASSOC))
{
   
$result4->execute([':freegame_id' => $row['freegame_id']]);
$picnr2 = $result4->fetch(\PDO::FETCH_ASSOC);
$getpicture2 =  $picnr2['picture_id'];
$subject2 =  $row['subject'];
$an2 = $row['freegame_id'];
$sectio2 = $row['section_id'];
}

         // irgendein Datenbankergebnis als Array
        $databaseResult = array( "$getpicture1.jpg","$getpicture2.jpg","$getpicture3.jpg","$getpicture4.jpg","$getpicture5.jpg");
       // das Datenbankergebnis als Json für JavaScript
        $databaseResultJson = json_encode($databaseResult);

        //die Anzahl des Datenbankergebnis
        // "minus 1"; da Arrays bei "0" beginnen
        $totalNumberOfImages = count($databaseResult) - 1;
    $image = $databaseResult[0];

    ?>

<table cellpadding=0 cellspacing=0 border=0  border=0 align=center>
                 <tr>        <td bgcolor=#005EBB rowspan=2 width=24 height=24 align=center valign=middle class='menuecorners3'>

    <div class="back face center">
  <img onclick=previousImage() src=prev.jpg border=0 width=24 height=36 border=0 onmouseout="this.src='prev.jpg';"   onmouseover="this.src='prev2.jpg';"></img></td>
       </div>       <td align=center  >
                <?php
                    // wir beginnen mit dem ersten Bild; index "0" == "bird.jpg"
                    $image = $databaseResult[0];
     
echo "
<div class=slider-holder>
         
        <a id=url ><img  id=the-image class='image-holder' src=uploadscript/img/android/$image width=430 height=286 alt='$image' ></img></a>

    </div> ";


   echo "</td>
            <td bgcolor=#005EBB rowspan=2 align=center valign=middle class=menuecorners4>
               <div onclick=slide1_images class='back face center'>
               <img onclick='nextImage()' src=next.jpg border=0 width=24 height=36 border=0  onmouseout=this.src='next.jpg';   onmouseover=this.src='next2.jpg';></img>
            </div>  
           
            </td>
        <tr>";
       
   echo "<td align=left bgcolor=005EBB><table align=center cellpadding=0 cellspacing=0 border=0 bgcolor=#005EBB ><td bgcolor=red width=240 ><a href=freegame_android_show.php?an=$an&sectio=$sectio id=subject class=customfont style=color:white;font-size:14px;padding-left:6px;>$subject</a></font><td align=right  bgcolor=darkred width=182><font class=customfont color=white><span class=customfont style=color:white;font-size:14px;padding-right:6px;>$kategorie</font></td></tr>";
   
echo "</td></table></table>";
       
  ?>  

 
</body>
</html>
<script>
    // zwei globale Variablen; die erste wird mit PHP gesetzt
    // "images" ist Json; kann wie ein Array verwendet werden
    let images = <?php echo $databaseResultJson; ?>;

    // auch in JS beginnen wir mit dem ersten Bild
    let index = 1;

    function nextImage() {
        // "const"; da wir die Variable "image" nicht im Nachinhein ändern wollen.
        // increaseIndex() gibt den aktuellen Index zurück
        // mit dem Index greifen wir auf das ensprechende Bild im Json zu



        const image = images[increaseIndex()];

       
       
        changeImage(image);
       
       
    }

    function previousImage() {
        const image = images[decreaseIndex()];
        changeImage(image);
    }

    function decreaseIndex() {
        // wir prüfen, ob der Index kleiner null werden würde; das wäre ein Fehler.
        // Also geben wir einfach wieder null zurück; ansonsten zählen wir den Index einen nach unten ("-1").
          if (index == 0)
        {
 
    var subject
var kategorie
var kategorie_nummer
    subject="<?php echo $subject; ?>"

             kategorie_nummer="<?php echo $sectio; ?>"

          document.getElementById("url").href = "freegame_android_show.php?sectio=<?php echo $sectio ?>&an=<?php echo $an ?>";

         document.getElementById("subject").innerHTML = subject;                
             document.getElementById("kategorie").innerHTML = kategorie;              
}
           if (index == 1)
        {
 
    var subject
var kategorie
var kategorie_nummer
    subject="<?php echo $id_selekt2[subject]; ?>"

             kategorie_nummer="<?php echo $id_selekt2[section_id]; ?>"

          document.getElementById("url").href = "freegame_android_show.php?sectio=<?php echo $id_selekt2[section_id] ?>&an=<?php echo $id_selekt2[freegame_id] ?>";

         document.getElementById("subject").innerHTML = subject;                
             document.getElementById("kategorie").innerHTML = kategorie;              
}
if ( index == 2)
        {
    var subject
var kategorie
    var kategorie_nummer
    subject="<?php echo $id_selekt3[subject]; ?>"

             kategorie_nummer="<?php echo $id_selekt3[section_id]; ?>"

      document.getElementById("url").href = "freegame_android_show.php?sectio=<?php echo $id_selekt3[section_id] ?>&an=<?php echo $id_selekt3[freegame_id] ?>";

         document.getElementById("subject").innerHTML = subject;                
             document.getElementById("kategorie").innerHTML = kategorie;              
           
   
}
 

    function increaseIndex() {
   
        // hier prüfen wir auf den maximalen Index.
              if (index == 1)
        {
 
    var subject2
var kategorie2
var kategorie_nummer2
    subject2="<?php echo $subject2; ?>"

             kategorie_nummer="<?php echo $sectio2; ?>"

if ( kategorie_nummer == 1)
    {
    kategorie = "ARCADE";
}  
if ( kategorie_nummer == 2)
    {
    kategorie = "ACTION";
}  
if ( kategorie_nummer == 3)
    {
    kategorie = "JUMP N RUN";
}  
if ( kategorie_nummer == 4)
    {
    kategorie = "GESCHICK";
}  
if ( kategorie_nummer == 5)
    {
    kategorie = "BRETTSPIELE";
}  
    if ( kategorie_nummer == 6)
    {
    kategorie = "RENNSPIELE";
}
    if ( kategorie_nummer == 7)
    {
    kategorie = "SPORTSPIELE";
}
if ( kategorie_nummer == 8)
    {
    kategorie = "KARTENSPIELE";
}
if ( kategorie_nummer == 9)
    {
    kategorie = "DENKSPIELE";
}
if ( kategorie_nummer == 10)
    {
    kategorie = "ADVENTURES";
}
if ( kategorie_nummer == 11)
    {
    kategorie = "STRATEGIE";
}      
if ( kategorie_nummer == 12)
    {
    kategorie = "ROLLENSPIELE";
}
          document.getElementById("url").href = "freegame_android_show.php?sectio=<?php echo $sectio ?>&an=<?php echo $an ?>";

         document.getElementById("subject").innerHTML = subject2;                
             document.getElementById("kategorie").innerHTML = kategorie2;              
}
if ( index == 2)
        {
           
           
    var subject
var kategorie
    var kategorie_nummer
    subject="<?php echo $id_selekt3[subject]; ?>"

             kategorie_nummer="<?php echo $id_selekt3[section_id]; ?>"

if ( kategorie_nummer == 1)
    {
    kategorie = "ARCADE";
}  
if ( kategorie_nummer == 2)
    {
    kategorie = "ACTION";
}  
if ( kategorie_nummer == 3)
    {
    kategorie = "JUMP N RUN";
}  
if ( kategorie_nummer == 4)
    {
    kategorie = "GESCHICK";
}  
if ( kategorie_nummer == 5)
    {
    kategorie = "BRETTSPIELE";
}  
    if ( kategorie_nummer == 6)
    {
    kategorie = "RENNSPIELE";
}
    if ( kategorie_nummer == 7)
    {
    kategorie = "SPORTSPIELE";
}
if ( kategorie_nummer == 8)
    {
    kategorie = "KARTENSPIELE";
}
if ( kategorie_nummer == 9)
    {
    kategorie = "DENKSPIELE";
}
if ( kategorie_nummer == 10)
    {
    kategorie = "ADVENTURES";
}
if ( kategorie_nummer == 11)
    {
    kategorie = "STRATEGIE";
}      
if ( kategorie_nummer == 12)
    {
    kategorie = "ROLLENSPIELE";
}
   
          document.getElementById("url").href = "artikel_show.php?sectio=<?php echo $id_selekt3[section_id] ?>&an=<?php echo $id_selekt3[freegame_id] ?>";
           document.getElementById("subject").innerHTML = subject;                
             document.getElementById("kategorie").innerHTML = kategorie;              
}

    function changeImage(image) {
                    document.getElementById("the-image").style.transition = "4s";
    document.getElementById("the-image").alt = image;
     
        document.getElementById("the-image").src = "uploadscript/img/android/" + image;
     

    }
</script>
          <script>
             var subject
     var kategorie

var kategorie_nummer
    subject="<?php echo $subject; ?>"
                   
                     kategorie_nummer="<?php echo $sectio; ?>"

if ( kategorie_nummer == 1)
    {
    kategorie = "ARCADE";
}  
if ( kategorie_nummer == 2)
    {
    kategorie = "ACTION";
}  
if ( kategorie_nummer == 3)
    {
    kategorie = "JUMP N RUN";
}  
if ( kategorie_nummer == 4)
    {
    kategorie = "GESCHICK";
}  
if ( kategorie_nummer == 5)
    {
    kategorie = "BRETTSPIELE";
}  
    if ( kategorie_nummer == 6)
    {
    kategorie = "RENNSPIELE";
}
    if ( kategorie_nummer == 7)
    {
    kategorie = "SPORTSPIELE";
}
if ( kategorie_nummer == 8)
    {
    kategorie = "KARTENSPIELE";
}
if ( kategorie_nummer == 9)
    {
    kategorie = "DENKSPIELE";
}
if ( kategorie_nummer == 10)
    {
    kategorie = "ADVENTURES";
}
if ( kategorie_nummer == 11)
    {
    kategorie = "STRATEGIE";
}      
if ( sectio == 12)
    {
    kategorie = "ROLLENSPIELE";
}
                 document.getElementById("url").href = "artikel_show.php?sectio=$sectio ?>&an=<?php echo $an ?>";
           document.getElementById("subject").innerHTML = subject;                
             document.getElementById("kategorie").innerHTML = kategorie;            
       
       
       
            </script>

Der Code wurde um das unwichtigste Gekürzt. Also nur 2 Bilder zum Testen ob es dann funktioniert.

Ausserdem, habe ich gegoogelt und wahrscheinlich wird das:

$array("[bild1],[bild2] etc.... umgeschrieben zu pdo_Fetch_all oder so ?

Wäre sehr nett von Dir, wenn Du mir helfen könntest. Bis März 2019 muss die Webseite umgeschrieben sein, ansonsten, funktioniert sie dan nicht mehr :hammer_alt:

Und bitte keine Kommentare wie, Code ist nicht optimal eingestellt. Muss jetzt einfach mal fertig bringen und kann dann später immer weitere Optimierungen machen :-).
 
DualityMind schrieb:
Und bitte keine Kommentare wie, Code ist nicht optimal eingestellt. Muss jetzt einfach mal fertig bringen und kann dann später immer weitere Optimierungen machen :-).

sorry aber ich muss dir sagen, der Code ist eine reine Katastrophe. Wieso investierst du nicht endlich mal eine Woche Zeit um dich einzulesen. Dann hast du immer noch genug Zeit bis ende Februar, um die 500 Zeilen Code umzuschreiben.

DualityMind schrieb:
Was kann ich anstelle von "<img>" benutzen, was dann besser ist für den Browser ? (schneller)

Das img Tag ist völlig in Ordnung. Aber nicht die Syntax der Attribute die du da rein schreibst...
 
  • Gefällt mir
Reaktionen: Nase
Hallo @DubZ

Leider sind es nicht nur 500 Zeilen. es sind ca. um die 200 Dateien (includes etc.) die ich umschreiben muss, daher kann ich im Moment keinen guten Code schreiben, da im März Stichtag ist :-(.

Von der Performance her, läuft es immer noch unter 0.3 - 0.9 Sekunden bis es aufgebaut ist, daher ist es nicht so schlimm mit dem Code. Hauptsache es funktioniert vorläufig :)

LG
 
DualityMind schrieb:
Was kann ich anstelle von "<img>" benutzen, was dann besser ist für den Browser ? (schneller)
Es geht weder um das "<img>" noch dass es schneller gehen sollte. Es ist schlicht kein valides HTML. Du setzt dem Browser Code vor, den er nicht versteht und wunderst dich, dass es nicht funktioniert. Dir fehlt es es an grundlegenden Grundlagen.

Das fängt schon in Zeile 1 an: Was mach das <script> außerhalb des <head>s <html>? Wo ist der <body>-Tag?

Am besten wendest du dich an jemanden, den du bezahlen kannst um das Projekt auf PDO umzuschreiben. Mit deinen jetzigen Kenntnissen und Lernfähigkeit wird das nichts.
 
Zuletzt bearbeitet: (Tag korriegiert.)
  • Gefällt mir
Reaktionen: Nase
Hallo @Darlis

Ich sehe da keine Probleme mit dem Code, es funktioniert eigentlich alles, muss es nur noch in PDO umschreiben.

Ohne PDO also mit PHP 5 zeigt er die Webseite alles korrekt an, obwohl ich keine <Head> und <Body> Elemente habe, funktioniert es auch so ganz gut bisher :-).

Ausserdem, habe ich erst mit Javascript angefangen und PHP weiss ich ungefähr wie es funktioniert, aber bei HTML (Body,Head etc...) habe ich mich bisher nicht gross Eingelesen, da es auch ohne das funktioniert, obwohl es sehr schlecht gecoded ist, immerhin erscheint die Webseite trotzdem unter 1 Sekunde :-).

Also bitte nicht schon wieder der Code ist scheisse etc. Ich werde ihn umschreiben sobald es unter PHP 7.2 lauffähig ist. Habe bereits gesagt, bitte keine Kommentare wie "Der Code ist schlecht etc..." Ich weiss, dass es schlecht ist, aber immerhin funktioniert es auch trotzdem :-).

LG
 
Ich verstehe dein Anliegen... du verstehst unseres aber nicht. Du hast jeden Tag mehrere Probleme und Fehler die nicht nur PHP spezifisch sind. Das nimmt kein Ende bei dem Code den ich da oben sehe. Zudem weiß ich gar nicht wie man sinnvoll Javascript "kann", ohne überhaupt HTML/XML zu verstehen. Ist zwar möglich, aber im Web nicht wirklich sinnvoll.

Ich kann dir beim Picture Slider nicht sagen was genau das Problem ist, da bei vielen Dingen Syntax Fehler sind die durch eine neuere PHP Version welche sich strikter an Standards hält offensichtlich zu Problemen führt. Es ist halt einfach zu viel, mal eben so zu helfen. Das erfordert viel Zeit die man nicht einfach so auswenden möchte. Die Frage ist zwar mit einem Satz von dir gestellt, die Antwort aber eben nicht in 1, 2 oder 3 Sätzen.
 
  • Gefällt mir
Reaktionen: Nase
Zurück
Oben