Frage zu Variablenproblem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • druckgott
    antwortet
    ah hab es schon gemerkt ging schon war nur das T bei SELECT

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    nein, es geht um den inhalt.

    Einen Kommentar schreiben:


  • druckgott
    antwortet
    also ich ersetzte ' durch " oder hab ich das jetzt falsch verstanden?

    Zuletzt geändert von druckgott; 03.12.2006, 13:32.

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    du kannst keine fragen mittels sql beantworten.
    du kannst datensätze anhand diverser merkmale selektieren.

    momentan selektierst du alle datensätze, die in dem feld "imgtext" etwas von einem leerzeichen verschiedenes enthalten.

    leer ist das feld, wenn darin "" steht.

    kontrolliere die syntax von SELECT.

    Einen Kommentar schreiben:


  • druckgott
    antwortet
    Hallo wie kann ich das machen bei einer SQL abfrage ob eine Zelle eine Tabelle (ein Feld) leer ist oder nicht

    hab das so versucht:
    PHP-Code:
    mysql_select_db("joomlashake") OR die(mysql_error());
     
    $sql2 "SELEC imgtext FROM jos_ponygallery WHERE imgtext <> ' ';";
     
    $res2 mysql_query($sql2) OR die(mysql_error());
     
    $row2 mysql_fetch_assoc($res2);
    echo 
    $row2['imgtext']; 
    aber das geht nicht da gibt er mir nix aus.

    MFG
    druckgott

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    schau mal ins manual: http://de3.php.net/manual/en/language.types.array.php

    PHP-Code:
    $arr = array(1,2,3,4,5,6,7,9); 

    Einen Kommentar schreiben:


  • druckgott
    antwortet
    Ich hätte mal noch eine weitere Frage!

    Das script sieht mitlerweile so aus:

    PHP-Code:
    <?php
    //Angaben des Pfades und Bildes
    $pfad "./components/com_ponygallery/img_pictures/";
    $bild "voksfestfliegen20061908_loisl_sepp*.jpg";
    $pic[] = 3;
    $pic[] = 7;
    $pic[] = 9;
    $pic[] = 15;
    $pic[] = 18;
    //Ab hier nicht mehr ändern

    include "connect.php";

    $i 0;

    foreach(
    glob("$pfad$bild") as $key  => $file){
     for(
    $n=0;$n<=$key;$n++){
     
    // hier liest er welche Bilder angezeigt werden
    if ($key+== $pic[$n])

    // pfad ersetzen durch nichts 
      
    $filename str_replace($pfad''$file);
      
      
    // Arraynr +1 für Bildnummern
      //hier $key damit die nr. des Bildes angezeigt wird
     
    $bildnr $n+1
     
    //Datenbankabfrage der Beschreibung Start
     
    mysql_select_db("joomlashake") OR die(mysql_error());
     
    $sql "SELECT    imgfilename, imgtext FROM jos_ponygallery WHERE imgfilename ='$filename';";
     
    $res mysql_query($sql) OR die(mysql_error());
     
    $row mysql_fetch_assoc($res);
    //Datenbankabfrage der Beschreibung Ende

     
    if ($i == 0
    {

    echo 
    "<table width='100%' border='0'>";      
        echo 
    "
        <tr>
            <td><img src='
    $file' border='0'></td>
            <td width='100'>Bild Nr. 
    $bildnr</td>
            <td><div align='center'>"
    .$row['imgtext']."</div></td>
        </tr>"
    ;
        echo 
    "</table>";
        
    $i=$i+1;
        }
        else 
        {
        echo 
    "<table width='100%' border='0'>";      
        echo 
    "
        <tr>
            <td><div align='center'>"
    .$row['imgtext']."</div></td>
            <td width='100'>Bild Nr. 
    $bildnr</td>
            <td><div align='right'><img src='
    $file' border='0'></div></td>
        </tr>"
    ;
        echo 
    "</table>";
        
    $i=$i-1;
        }
        }}}
    mysql_close($db);
    ?>
    Jetzt trag ich unter
    $pic[] = 3;
    $pic[] = 7;
    $pic[] = 9;
    $pic[] = 15;
    $pic[] = 18;
    oben die Bilder an die angezeigt werden sollen
    allerdings hätte ich es gerne so, das ich eine Variable habe die z.B.
    $hans = 3,7,9,15,18 habe und er die auf die arrays verteilt.
    Wie kann ich das verwirklichen?

    Übringends danke für den tip mit den 2 tut seiten jetzt check ich das auch mal selber annähern

    Einen Kommentar schreiben:


  • druckgott
    antwortet
    //edit hat hingehauen
    Zuletzt geändert von druckgott; 02.12.2006, 15:19.

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    ah, ok.. dann lasse dir zeit und beginne erst mal mit ausführlichen anleitungen wie tut.php-q.net bzw. faq-php.de

    Einen Kommentar schreiben:


  • druckgott
    antwortet
    ja ich ändere nichts an einem CMS ich will nur etwas aus dem CMS auslesen und mir dann eine Seite erstellen lassen

    an dem CMS selbst herumschrauben traue ich mich nicht

    und wo sind den die Forumregeln mit den Tricks?

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    zwar liegt der fehler im falschen umgang mit strings in sql, aber das kannst du auch selbst herausfinden, wenn du (1) die dokumentation zu mysql bzw. (2) die forumregeln mit einigen tricks durchliest.

    kann dir nur empfehlen klein anzufangen. so ganz ohne vorkenntnisse an einem fertigen (wenn auch grottigen) cms herumzuschrauben kann _sehr_ schwer werden.

    Einen Kommentar schreiben:


  • druckgott
    antwortet
    Jetzt hab ich ein Problem:

    Code:
    CREATE TABLE `jos_ponygallery` (
      `id` int(11) NOT NULL auto_increment,
      `catid` int(11) NOT NULL default '0',
      `imgtitle` text NOT NULL,
      `imgauthor` varchar(50) default NULL,
      `imgtext` text NOT NULL,
      `imgdate` varchar(20) default NULL,
      `imgcounter` int(11) NOT NULL default '0',
      `imgvotes` int(11) NOT NULL default '0',
      `imgvotesum` int(11) NOT NULL default '0',
      `published` tinyint(1) NOT NULL default '0',
      `imgfilename` varchar(100) NOT NULL default '',
      `imgthumbname` varchar(100) NOT NULL default '',
      `checked_out` int(11) NOT NULL default '0',
      `owner` varchar(50) NOT NULL default '',
      `approved` int(1) NOT NULL default '0',
      `useruploaded` int(1) NOT NULL default '0',
      `ordering` int(11) NOT NULL default '0',
      PRIMARY KEY  (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=192 ;
    
    INSERT INTO `jos_ponygallery` VALUES (97, 3, 'Voksfestfliegen20061908_Loisl_Sepp002', '',
     '', '1164540776', 2, 0, 0, 1, 'voksfestfliegen20061908_loisl_sepp002_2_20061126_1060551209.jpg',
     'voksfestfliegen20061908_loisl_sepp002_2_20061126_1060551209.jpg', 0, 'Michi', 1, 0, 0);
    das ist meine Tabelle

    Allerdings bringt er mir jetzt einen Fehler wenn ich das so schreibe:
    PHP-Code:
    $bild mysql_db_query("joomlashake""select * from jos_ponygallery where imgfilename = $file");
    $ausgabe mysql_result($bild"imgtext");  
    echo 
    "$ausgabe
    das joomlashake ist der Name der Mysql Datenbank.

    Er soll mir jetzt in der Datenbank joomlashake die Tabelle jos_ponygallery auswählen, wo imgfilename = $file ist.
    Und dann soll er mir in $ausgabe den imgtext speichern. Ich bekomme aber diesen Fehler:

    Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /var/www/vhosts/shake-cocktails.de/httpdocs/components/com_ponygallery/img_pictures/test.php on line 15

    an was liegt das jetzt?
    Zuletzt geändert von druckgott; 02.12.2006, 12:42.

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    genau - der modulo operator gibt den rest bei der teilung zurück.
    natürlich kannst du deine sql anfrage nach belieben erweitern. wie - kann ich nicht wissen, weil ich nicht weiß, wie deine datenbank aussieht und was du genau unter "Catrgorie" verstehst.

    gib dir mühe, drück dich verständlich aus.

    Einen Kommentar schreiben:


  • druckgott
    antwortet
    jo hab ich auch gerade gemerkt er dividiert $i durch 2 und vergleicht den rest dann ob es gleich 0 ist

    also z.B. 5 %2 ist ja dann 2 rest 1 und dann vergleicht er 1 mit 0 in dem fall falsch

    jetzt hätte ich noch eine frage ich kann ja eine Datenbankabfragen machen

    select * from jos_ponygallery
    where imgtitle = $file;

    da sucht er ja jetzt in der Taballe jos_ponygallery wo der imgtitle = der Filename ist.

    Jetzt würde ich gerne wissen, wie ich das machen, das er wenn das zutrifft in dieser Tabelle eine andere Catrgorie ausliest und anzeigt?
    kann ich das so machen?

    das müsste doch so gehen

    PHP-Code:
    $bild mysql_db_query"select * from jos_ponygallery where imgtitle = $file");
    $ausgabe mysql_result($bild"imgtext");  
    echo 
    "$ausgabe
    Zuletzt geändert von druckgott; 02.12.2006, 12:22.

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    nein, das ist leider falsch, schaue noch mal ins manual, dort steht genau erklärt, was der operator bewirkt.

    z.b. ist 4%2 == 0, aber 4 durch 2 ist niemals null..

    Einen Kommentar schreiben:

Lädt...
X