Hallo erst mal,

ich habe ein Problem mit einem Projekt das ich vor geraumer Zeit begonnen habe. Es geht dabei um folgendes:

Ich habe mit Hilfe von Javascript, PHP und AJAX versucht einen Ersatz für den veralteten IFrame zu schaffen, indem ich versucht habe einen Divcontainer mit verschiedenen Inhalten (ausgelagerten Quelltext) aus "Modulen" zu füllen. Es ist soweit gelungen HTML, CSS, Javascript, PHP und MySQL zu verwenden. Aber der FORM Tag macht mir Schwierigkeiten. Bei dem Versuch neue Einträge/Bewertungen zu Bildern hinzuzufügen, wird die Seite neugeladen und in meinem Fall bedeutet das, dass nur der Modulteil der Seite in dem der Submitbutton ist, neu geladen wird.
Theoretisch sollte nur das Modul neu geladen werden, statt der ganzen Seite aber dies lies sich nur schwer realisieren. Ich zeig euch mal was ich bis jetzt an Quelltext habe.
Da wäre als erstes die Index.php:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php
session_start();
require_once("verbindung.inc.php");
 
?>
<html>
<head>
 
<script language="JavaScript" type="text/javascript">
function versenden()
{
 
if(document.Bewertung.bewertung[0].checked){
    bew=1;}
if(document.Bewertung.bewertung[1].checked){
    bew=2;}
if(document.Bewertung.bewertung[2].checked){
    bew=3;}
if(document.Bewertung.bewertung[3].checked){
    bew=4;}
if(document.Bewertung.bewertung[4].checked){
    bew=5;}
 
bild=document.Bewertung.bild.value;alert(bild);
 
mfg="mods/Forum.modul.php?Nr="+bild+"&Bew="+bew;alert(mfg);
 
new Ajax.Updater($('container'), mfg);
 
}
 
</script>
 
  <title>Mod-loader</title>
  <script type="text/javascript" src="prototype.js">
  </script>
 
 
 
 
</head>
<body>
 
   <!--  <a onclick="new Ajax.Updater($('container'), 'mods/test.txt')">Hier klicken</a>  -->
   <input type="button" onclick="new Ajax.Updater($('container'), 'mods/Forum.modul.php?Nr=3')" value="Forum">
   <input type="button" onclick="new Ajax.Updater($('container'), 'mods/Bildanzeige.modul.php?Nr=1')" value="Bildergalerie">
   <input type="button" onclick="new Ajax.Updater($('container'), 'mods/Bildauswahl.modul.php')" value="Übersicht Bildergalerie">
   <input type="button" onclick="new Ajax.Updater($('container'), 'mods/links.modul.php')" value="Links">
   <input type="button" onclick="new Ajax.Updater($('container'), 'mods/Impressum.modul.php')" value="Impressum">
   <div id="container">
   Hier lesen
   </div>
</body>
</html>

Dann das bildanzeige.modul.php:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<?php
require_once("verbindung.inc.php");
$nr=$_GET['Nr'];
 
$result1=mysql_query("SELECT FBild FROM forum WHERE FNr = '$nr'") or die("Error");
$bilder=mysql_fetch_row($result1);
 
$result3=mysql_query("SELECT COUNT(*) FROM forum ORDER BY FNr desc") or die("Error");
$count=mysql_fetch_row($result3);
 
$counter=$count[0];
$counter2=$count[0]-1;
 
if($nr==1)
{
  $start=$nr;
  $end=$nr+4;
}
else
{
  if($nr==2)
  {
    $start=$nr-1;
    $end=$nr+3;
  }
  else
  {
    if($nr==$counter)
    {
      $start=$nr-4;
      $end=$nr;
    }
    else
    {
      if($nr==$counter2)
      {
        $start=$nr-3;
        $end=$nr+1;
      }
      else
      {
        $start=$nr-2;
        $end=$nr+2;
      }
    }
  }
}
 
$result2=mysql_query("SELECT FBild,FNr,FTitel FROM forum WHERE FNr BETWEEN '$start' AND '$end' ORDER BY FNr") or die("Error");
 
echo "<table>";
  echo "<tr>";
    echo "<td>";
    echo "<div><img src='./bilder/".$bilder[0]."'  border='0' alt=''> </div>";
    echo "</td>";
  echo "</tr>";
  echo "<tr>";
    echo "<td>";
    echo "<div>";
    echo "<table>";
      echo "<tr>";
        echo "<td width='475'>";
 
        echo "<div onclick=\"new Ajax.Updater($('container'), 'mods/Forum.modul.php?Nr=$nr')\">Forum</div>";
 
        echo "</td>";
        echo "<td>";
 
        echo "<div onclick=\"new Ajax.Updater($('container'), 'mods/Bewertung.modul.php?Nr=$nr')\">Bewerten</div>";
 
        echo "</td>";
      echo "</tr>";
    echo "</table>";
    echo "<div>";
    echo "</td>";
  echo "</tr>";
  echo "<tr>";
    echo "<td>";
    echo "<div>";
    echo "<table>";
      echo "<tr>";
 
        while($t_bilder=mysql_fetch_row($result2))
        {
        echo "<td align='center' width='105' height='110'>";
        echo "<div name='".$t_bilder[1]."' onclick=\"new Ajax.Updater($('container'), 'mods/Bildanzeige.modul.php?Nr=$t_bilder[1]')\"><img src='./bilder/t_".$t_bilder[0]."' border='0' alt='".$t_bilder[2]."'></div>";
        echo "</td>";
 
      }
      echo "</tr>";
    echo "</table>";
    echo "</div>";
    echo "</td>";
  echo "</tr>";
  echo "<tr>";
    echo "<td>";
    echo "<div>";
 
      echo "<table>";
        echo "<tr>";
          echo "<td width='250'>";
 
            if($nr!=1)
            {$nr2=$nr-1;}
            else
            {$nr2=$nr;}
 
            echo "<div name='zurück' onclick=\"new Ajax.Updater($('container'), 'mods/Bildanzeige.modul.php?Nr=$nr2')\">Zur&uuml;ck</div>";
 
          echo "</td>";
          echo "<td width='250'>";
 
            echo "<div name='mehr' onclick=\"new Ajax.Updater($('container'), 'mods/Bildauswahl.modul.php')\">Mehr</div>";
 
          echo "</td>";
          echo "<td>";
 
            if($nr!=$counter)
            {$nr3=$nr+1;}
            else
            {$nr3=$nr;}
 
            echo "<div name='vor' onclick=\"new Ajax.Updater($('container'), 'mods/Bildanzeige.modul.php?Nr=$nr3')\">Vor</div>";
 
        echo "</td>";
        echo "</tr>";
      echo "</table>";
 
    echo"</div>";
    echo "</td>";
  echo "</tr>";
echo "</table>";

Und als letztes noch das bewertung.modul.php:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
require_once("verbindung.inc.php");
$nr=$_GET['Nr'];
 
$result1=mysql_query("SELECT FBild FROM forum WHERE FNr = '$nr'") or die("Error");
$bilder=mysql_fetch_row($result1);
 
echo "<div>";
echo $bilder[0];
 
 
 
?>
 
 
 
 
 
 
 
<table width="500">
 
<tr>
<td>
 
 
    <form name="Bewertung">
    <input type="hidden" name="bild" value="<?php echo $nr ?>">
    <input type="radio" name="bewertung" value="1">sehr schlecht
    <input type="radio" name="bewertung" value="2">schlecht
    <input type="radio" name="bewertung" value="3">ziemlich mittelm&auml;ssig
    <input type="radio" name="bewertung" value="4">gut
    <input type="radio" name="bewertung" value="5"> &uuml;berragend
    <input name="OK" type="button" onclick="versenden()" value="Absenden">
    </form>
 
 
</div>
 
<?php
$bewertung=$_POST['bewertung'];
$ok=$_POST['OK'];
echo $ok;
 
 
if(isset($ok))
{
 
echo "Nr:".$nr."<br>";
echo "Bewertung:".$bewertung;
 
 
 
 $sql="INSERT INTO bewertung (BeNr,BeAssess) VALUES('$nr','$bewertung')";
 mysql_query($sql) or die ("Eintragung fehlgeschlagen");
}
?>
 
    <br>
    
 
</td>
</tr>
</table>

Noch ein paar Anmerkungen, ich verwende in meinem Quellcode das prototype.js, was das AJAX auf meiner Seite steuert. In dem Code findet ihr außerdem erste Versuche das Problem zu lösen, wenn euch bessere Alternativen dazu einfallen immer raus damit.

PS: Sollte dieser Beitrag an der falschen Stelle stehen entschuldige ich mich hiermit dafür aber da es so viele Gebiete anschneidet, wusste ich nicht wirklich wo ich es reinposten sollte. Danke in vorraus für euere Hilfe.