Meine PHP probleme

    • Problem ist: Wenn du eine Webseite darstellst, dann ist sie fertig. Punkt.
      Du kannst sie nachträglich nur ändern, indem du vom Server die Seite nocheinmal anforderst (F5). Oder du brauchst andere Verfahren außer HTML und PHP, die auf den Server direkt zugreifen und dann automatisch aktualisieren (Flash, Ajax, usw.). Die letzteren sind jedoch komplizierter und für dein Projekt daher eher unpraktisch.
    • Original von Retr0Virus
      Problem ist: Wenn du eine Webseite darstellst, dann ist sie fertig. Punkt.
      Du kannst sie nachträglich nur ändern, indem du vom Server die Seite nocheinmal anforderst (F5). Oder du brauchst andere Verfahren außer HTML und PHP, die auf den Server direkt zugreifen und dann automatisch aktualisieren (Flash, Ajax, usw.). Die letzteren sind jedoch komplizierter und für dein Projekt daher eher unpraktisch.


      Hab jetzt die Funktion header() verwendet. Macht prinzipiell das selbe wie du sagst...

      @Squall: Danke für den Link :)
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net
    • Hab mal wieder ein Problem, dass ich seit 2 Stunden versuche zu lösen, aber ich bringe es einfach nicht zusammen.

      Hab neben der Klassenhomepage ein kleineres Projekt. Aufjedenfall will ich ein Zufallsbild aus einem Ordner ausgeben. Jetzt hab ich mir eine Datenbank + Tabelle angelegt, die folgende Spalten habne

      id //klar...
      ordner // in welchem ordner sind die Bilder gespeichert
      maxfotos //wie viele fotos sind maximal drinnen. INFO: die bilder heißen 1.jpg, 2.jpg usw

      hier der Code

      PHP-Quellcode

      1. <?php
      2. $DBASE = "vorgluehn";
      3. mysql_connect("localhost", "root", "") or die ("Keine Verbindung moeglitggch");
      4. $sqlab = "select * from fotos";
      5. $settings = mysql_db_query($DBASE, $sqlab);
      6. $function = $_POST["function"];
      7. $party = $_POST["party"];
      8. if(!isset($function)&&!isset($party))
      9. {
      10. $lastpartyid = mysql_num_rows($settings);
      11. echo"<b>Zufallsbilder des letzten Vorgluehns</b><br>";
      12. echo"<img src = 'fotos/" . mysql_result($settings,$lastpartyid,"Ordner") . "/" . rand(1,mysql_result($settings,$lastpartyid,"maxfotos")) . ".JPG' width = '300px'>";
      13. }
      14. ?>
      15. //Warning: mysql_result() [function.mysql-result]: Unable to jump to row 1 on MySQL result index 4 in C:\xampp\htdocs\vorgluehn\content.php on line 15
      16. //Warning: mysql_result() [function.mysql-result]: Unable to jump to row 1 on MySQL result index 4 in C:\xampp\htdocs\vorgluehn\content.php on line 15
      Alles anzeigen


      Die Fehlermeldungen habe ich ganz unten als Kommentar hinzugefügt...

      Achja.. Anfangs hätte ich es so gemacht dass ich zB

      mysql_result($settings,$lastpartyid,"Ordner")

      in einer Variabloe gespeichert habe... hat auch nicht funktioniert


      MFG
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net
    • Geht auch einfacher:
      [php]<?php
      $folder = 'pics';
      $images = array();

      if ($handle = opendir($folder))
      {
      while (false !== ($file = readdir($handle)))
      if(preg_match('/.+\.jpg/i', $file))
      $images[] = $file;
      closedir($handle);
      if(count($images) > 0)
      echo '<img src="'.$folder.'/'.$images[array_rand($images)].'" alt="" />';
      else
      echo 'Keine Bilder gefunden.';
      }
      ?>[/php]
      Wenn du das unbedingt mit MySQL lösen willst, dann kann ich dir diese Möglichkeit auch schreiben, wenn du willst.
    • Mit MYSQL wäre es mir doch lieber, weil ich da einfach nur in der Tabelle das ganze ändern muss und so muss ich immer den code ändern...

      weil da hab ich die varialbe $lastpartyid, die die id der letzten party angibt, und ich auf der startseite immer die ein zufallsfoto der letzten party machen will..

      Wäre echt nett von dir :)
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Stan ()

    • Ich hab echt keine Ahnung, ob das funktioniert, ist komplett ungetestet. :D

      [php]<?php
      $mysql = array('host' => 'localhost', 'user' => 'root', 'password' => '', 'database' => 'vorgluehn');
      $link = mysql_connect($mysql['host'], $mysql['user'], $mysql['password']) or die(mysql_error());
      mysql_select_db($mysql['database'], $link) or die(mysql_error());
      $sql = "SELECT ordner, FLOOR(1+RAND()*(maxfotos-1)) AS foto FROM fotos WHERE id = (SELECT MAX(id) FROM fotos) LIMIT 1";
      $result = $mysql_query($sql, $link) or die(mysql_error());
      if(mysql_num_rows($result) > 0)
      {
      $row = mysql_fetch_assoc($result) or die(mysql_error());
      $path = './fotos/'.$row['ordner'].'/'.$row['foto'].'.jpg';
      echo '<img src="'.$path.'" style="width: 300px;" alt="" />';
      }else
      echo 'Kein Foto gefunden.';
      ?>[/php]
    • Original von Squall
      Ich hab echt keine Ahnung, ob das funktioniert, ist komplett ungetestet. :D

      [php]<?php
      $mysql = array('host' => 'localhost', 'user' => 'root', 'password' => '', 'database' => 'vorgluehn');
      $link = mysql_connect($mysql['host'], $mysql['user'], $mysql['password']) or die(mysql_error());
      mysql_select_db($mysql['database'], $link) or die(mysql_error());
      $sql = "SELECT ordner, FLOOR(1+RAND()*(maxfotos-1)) AS foto FROM fotos WHERE id = (SELECT MAX(id) FROM fotos) LIMIT 1";
      $result = $mysql_query($sql, $link) or die(mysql_error());
      if(mysql_num_rows($result) > 0)
      {
      $row = mysql_fetch_assoc($result) or die(mysql_error());
      $path = './fotos/'.$row['ordner'].'/'.$row['foto'].'.jpg';
      echo '<img src="'.$path.'" style="width: 300px;" alt="" />';
      }else
      echo 'Kein Foto gefunden.';
      ?>[/php]



      Vielen Dank :) Was würde nur ohne dich machen xD
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net
    • Original von Squall
      Original von Stan
      Vielen Dank :) Was würde nur ohne dich machen xD

      Heißt das nun, dass es richtig funktioniert? Würde mich sehr überraschen. :D


      Nein heißt es nicht... Hab überschnell gepostet xD

      ERROR: Function Name must be a String in c:\..... on line 6

      also

      $result = $mysql_query($sql, $link) or die(mysql_error());
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net
    • Squall mal wieder ne aufgabe für dich ^^ (Natürlich auch für die andern ^^)

      Hier mal der Code

      PHP-Quellcode

      1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      2. <html>
      3. <head>
      4. <title>3AN Online</title>
      5. <style type="text/css">
      6. a:link { text-decoration:none; font-weight:none; color:black; }
      7. a:visited { text-decoration:none; font-weight:none; color:#000000; }
      8. a:hover { text-decoration:none; font-weight:bold; color:orange; }
      9. a:active { text-decoration:none; font-weight:none; background-color:#ffffff; }
      10. a:focus { text-decoration:none; font-weight:none; background-color:#ffffff; }
      11. </style>
      12. <link href="style1.css" rel="stylesheet" type="text/css">
      13. </head>
      14. <body>
      15. <?php
      16. $function = $_post["function"];
      17. $party = $_post["party"];
      18. ?>
      19. <center>
      20. <table width="1036" border="0" vspace="0" >
      21. <tr>
      22. <td height="1" colspan="5" class="top"></td>
      23. </tr>
      24. <tr>
      25. <td width="30" rowspan="2" class="randl">&nbsp;</td>
      26. <td height="134" colspan="3" class="banner"><center><img src="bilder/JPG/Banner.jpg" width="936" height="134"></center></td>
      27. <td width="28" rowspan="2" class="randr">
      28. </td>
      29. </tr>
      30. <tr>
      31. <td width="199" valign="top" nowrap class="navi1" border="1px" bordercolor="#7b7b7b"><img src="bilder/JPG/navi.jpg" width="195" height="19"><br>
      32. <center>
      33. <?php
      34. include("left.php");
      35. ?>
      36. </center>
      37. <td width="548" valign="top" class="content" border="1px" bordercolor="#7b7b7b"><img src="bilder/JPG/content.jpg" width="546" height="19"><br><center>
      38. <?php
      39. $vgid = $_GET["vorglid"];
      40. $name = $_POST["name"];
      41. $vorgluehn = $_POST["vorgluehn"];
      42. $fotos = $_POST["fotos"];
      43. $DBASE = "vorgluehn";
      44. mysql_connect("localhost", "vorgluehn", "sagichnicht ^^") or die ("Keine Verbindung moeglitch");
      45. if($vgid == 2)
      46. {
      47. $table = "halloween";
      48. }
      49. if($vgid == 3)
      50. {
      51. $table = "chaos";
      52. }
      53. $sqlab = mysql_query("select * from $table");
      54. $settings = mysql_db_query($DBASE, $sqlab);
      55. $eintrag = "INSERT INTO $table (name, vorgluehn, fotos) VALUES ('$name', '$vorgluehn', '$fotos')";
      56. $eintragen = mysql_query($eintrag);
      57. echo '<form action="commentvorgl.php" method="post">
      58. <b>Dein Name:<br></b>
      59. <input type="text" size="17" name="name">
      60. <br><b>Dein Kommentar zum Vorglühn:<br></b>
      61. <input type="text" size="17" name="vorgluehn">
      62. <br><b>Dein Kommentar zu den Fotos:<br></b>
      63. <input type="text" size="17" name="fotos"><br>
      64. <input type="submit" value="Kommentar abgeben">
      65. </form>';
      66. if($vgid==2)
      67. {
      68. echo"<b>Bereits ausgefuehrte Kommentare zu 'Halloween'</b><br><br>";
      69. }
      70. if($vgid==3)
      71. {
      72. echo"<b>Bereits ausgefuehrte Kommentare zu 'Vorglühn vor Chaos'</b><br><br>";
      73. }
      74. $num_rows = mysql_num_rows($result);
      75. for($i=0;$i<$num_rows;$i++)
      76. {
      77. echo "<b><font color='orange'>" .mysql_result($settings,$i,"name") . "</font><br>meinte zum Vorgluehn:<br>" . "</b> " . mysql_result($settings,$i,"vorgluehn") . "<br><b>und zu den Fotos:</b><br>" . mysql_result($settings,$i,"fotos") . "<br><br>";
      78. }
      79. ?>
      80. </center></td>
      81. <td width="197" class="navi2" valign="top" border="1px" bordercolor="#7b7b7b"><img src="bilder/JPG/navi.jpg" width="195" height="19"><center><?php include("right.php");?></center></td>
      82. </tr>
      83. <tr>
      84. <td height="5" colspan="5"><img src="bilder/JPG/bot.jpg" width="1027" height="10"></td>
      85. </tr>
      86. </table>
      87. </center>
      88. </body>
      89. </html>
      Alles anzeigen


      Schaut euch den Fehler selber an:

      KLICK > links auf fotos > Dieses vorgluehn Kommentieren > was eintragen > fehler...

      was kann das sein? ich versteh nicht was das ist....

      Hoffe auf Hilfe ^^
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net
    • arr dummer fehler... ist aber immer noch ein Fehler hier....

      Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/export/www/vhosts/funnetwork/hosting/vorgluehn/comment.php on line 93
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net
    • Wo verwendest du denn vor dem Aufruf mit dem Fehler $result?
      Das sehe ich in deinem Quelltext überhaupt nicht. O.o
      Wird $result überhaupt definiert? In dem Quelltext trägst du doch nur was ein, liest die Information aber nicht wieder aus?!
      Oder benutzt du den Code-Teil von Squall? Wenn ja, dann aber nicht in deinem Ausschnitt den du gepostet hast.
    • Nein Nein... Ich den Fehler hab ich ja behoben...
      War ein dummer fehler von mir, den ich begangen habe und ich habe ihn shcon ausgemerzt...

      Hier der aktuelle Code


      Spoiler anzeigen

      PHP-Quellcode

      1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      2. <html>
      3. <head>
      4. <title>3AN Online</title>
      5. <style type="text/css">
      6. a:link { text-decoration:none; font-weight:none; color:black; }
      7. a:visited { text-decoration:none; font-weight:none; color:#000000; }
      8. a:hover { text-decoration:none; font-weight:bold; color:orange; }
      9. a:active { text-decoration:none; font-weight:none; background-color:#ffffff; }
      10. a:focus { text-decoration:none; font-weight:none; background-color:#ffffff; }
      11. </style>
      12. <link href="style1.css" rel="stylesheet" type="text/css">
      13. </head>
      14. <body>
      15. <?php
      16. $function = $_post["function"];
      17. $party = $_post["party"];
      18. ?>
      19. <center>
      20. <table width="1036" border="0" vspace="0" >
      21. <tr>
      22. <td height="1" colspan="5" class="top"></td>
      23. </tr>
      24. <tr>
      25. <td width="30" rowspan="2" class="randl">&nbsp;</td>
      26. <td height="134" colspan="3" class="banner"><center><img src="bilder/JPG/Banner.jpg" width="936" height="134"></center></td>
      27. <td width="28" rowspan="2" class="randr">
      28. </td>
      29. </tr>
      30. <tr>
      31. <td width="199" valign="top" nowrap class="navi1" border="1px" bordercolor="#7b7b7b"><img src="bilder/JPG/navi.jpg" width="195" height="19"><br>
      32. <center>
      33. <?php
      34. include("left.php");
      35. ?>
      36. </center>
      37. <td width="548" valign="top" class="content" border="1px" bordercolor="#7b7b7b"><img src="bilder/JPG/content.jpg" width="546" height="19"><br><center>
      38. <?php
      39. $vgid = $_GET["vorglid"];
      40. $name = $_POST["name"];
      41. $vorgluehn = $_POST["vorgluehn"];
      42. $fotos = $_POST["fotos"];
      43. $DBASE = "vorgluehn";
      44. mysql_connect("localhost", "vorgluehn", "sag ich nicht") or die ("Keine Verbindung moeglitch");
      45. if($vgid == 2)
      46. {
      47. $table = "halloween";
      48. }
      49. if($vgid == 3)
      50. {
      51. $table = "chaos";
      52. }
      53. $sqlab = mysql_query("select * from $table");
      54. $settings = mysql_db_query($DBASE, $sqlab);
      55. $eintrag = "INSERT INTO $table (name, vorgluehn, fotos) VALUES ('$name', '$vorgluehn', '$fotos')";
      56. $eintragen = mysql_query($eintrag);
      57. echo '<form action="commentvorgl.php" method="post">
      58. <b>Dein Name:<br></b>
      59. <input type="text" size="17" name="name">
      60. <br><b>Dein Kommentar zum Vorglühn:<br></b>
      61. <input type="text" size="17" name="vorgluehn">
      62. <br><b>Dein Kommentar zu den Fotos:<br></b>
      63. <input type="text" size="17" name="fotos"><br>
      64. <input type="submit" value="Kommentar abgeben">
      65. </form>';
      66. if($vgid==2)
      67. {
      68. echo"<b>Bereits ausgefuehrte Kommentare zu 'Halloween'</b><br><br>";
      69. }
      70. if($vgid==3)
      71. {
      72. echo"<b>Bereits ausgefuehrte Kommentare zu 'Vorglühn vor Chaos'</b><br><br>";
      73. }
      74. $num_rows = mysql_num_rows($settings);
      75. for($i=0;$i<$num_rows;$i++)
      76. {
      77. echo "<b><font color='orange'>" .mysql_result($settings,$i,"name") . "</font><br>meinte zum Vorgluehn:<br>" . "</b> " . mysql_result($settings,$i,"vorgluehn") . "<br><b>und zu den Fotos:</b><br>" . mysql_result($settings,$i,"fotos") . "<br><br>";
      78. }
      79. ?>
      80. </center></td>
      81. <td width="197" class="navi2" valign="top" border="1px" bordercolor="#7b7b7b"><img src="bilder/JPG/navi.jpg" width="195" height="19"><center><?php include("right.php");?></center></td>
      82. </tr>
      83. <tr>
      84. <td height="5" colspan="5"><img src="bilder/JPG/bot.jpg" width="1027" height="10"></td>
      85. </tr>
      86. </table>
      87. </center>
      88. </body>
      89. </html>
      Alles anzeigen
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net
    • Hmm... wenn ich das richtig sehe, dann ist $sqlab dein richtiger Rückgabewert.
      Dieser liefert bereits die richtigen Daten und muss nicht in ein mysql_db_query gesteckt werden, da der mysql_query bereits ausgeführt worden ist.
      Also entweder unten mysql_num_row($sqlab) ausführen oder die mysql_query Zeile löschen und nur mysql_db_query($DBASE, "select * from $table") ausführen.
      Apropos... wo legst du die Variable $DBASE fest?
    • Original von Retr0Virus

      Apropos... wo legst du die Variable $DBASE fest?


      bei den ganzen Post und Get sachen ;)

      ich probiers mal wie du gesagt hast

      EDIT: Ich hab beides gemacht, wie du gesaggt hast, und es geht immer noch nicht
      James
      [Blockierte Grafik: http://dl.dropbox.com/u/24753690/stuff/forenlinks/rocketsign.png]
      Team Rocket - so schnell wie das Licht,
      gebt lieber auf und bekämpft uns nicht!

      join #teamrocket @iz-smart.net

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Stan ()