Querys über adminbereich auf die index seite

Was ist das?
PHP:
$_POST["$thema;"]

Damit würdest du den parameter mit Namen des Anhaltes von $thema + ';' abfragen! Und ich glaube, das wird nix! Oder denk ich gerade schief? :o

PS: zu dem SQL Error: du kannst immernoch nicht 4 Felder einfügen, wenn du nur 3 vorher ausgewählt hast! ;)
 
@huber83

also, da die daten von der updateindex.php kommen und die felder Thema und Update ausgefühlt seien sollen, soll der in der updateadd.php prüfen ob die Variablen $thema; und $update; mit inhalt gefühlt sind und sie dann in die db speichern anderer seits wenn sie leer sind soll er eine Fehlermeldung ausgeben. Und wenn sie in die DB gespeichert wurden soll er mir es mit einem Satz anzeigen.

Das ist was die updateadd.php nur machen soll.

P.s. wie meinst du dein PS?
 
Also liegt doch nicht bei mir der Denkfehler! ;)

es geht darum, das wenn in der php.ini register_globals auf off steht, wirst du mittels $parametername nicht auf den Inhalt zugreifen können!
Stattdessen mit den globalen Supervariablen $_POST, $_GET und $_REQUEST ...

soll heissen wenn du ein HTML Formular mittels method="POST" abschickst, greifst du in dem Empfängerscript nicht mit $thema drauf zu, sondern mit $_POST["thema"]! (an deinem Beispiel...)
 
Leider kann ich nicht sagen ob register_globals auf off oder on steht. Mein HP liegt bei tripot/Lycos.
Und wie soll ich das Prob nun lösen? ich hab echt keine Ahnung mehr. Mein Kopf ist total leer. An diesem Prob sitze ich nun eine geschlagene Woche ~.~ das nervt total. so komme ich mit der HP nie voran.
 
Wie gesagt -> $_POST["parameter"] benutzen! Wäre schonmal ein Anfang!
Wennd er Fehler überhaupt in der Richtung liegt...

bis zu welchem _bloedmann_ läuft das Script denn durch?
 
PHP:
<?php
include("kopf.php");
?>

      <td bgcolor="C0C0C0" width="570" height="436" style="border: 1px solid #000000"  valign="top">

            <center><table width="570"  border="0" valign="top">
              <tr>
                <td width="505">&nbsp;

				<?php

include(".php");
include(".php");

$datum=date("Y-m-d");
echo "blödmann1";
if (isset($_POST["thema"]) && isset($_POST["update"])) 
{
	echo "blödmann2";
    if ($_POST["thema"] == "" or $_POST["update"] == "") 
    {
    	echo "<br><br><center>
        <table width=500 border=0>
          <tr>
            <td colspan=2 bgcolor=$tablebg style=\"border: 1px solid #000000\">
              <font face=$tablefont size=2><b>Fehler bei der Bearbeitung aufgetreten</b></font>
            </td>
          </tr>
        </table>";
    } 
    else
    {
		echo "blödmann3";
      $verbindung = @mysql_connect("$sqlhost","$sqluser","$sqlpass");
      if (!$verbindung)
      {
      	echo "blödmann4";
        echo "Verbindung zur Datenbank war nicht möglich!\n";
        exit;
      }
      echo "blödmann5";
      mysql_select_db($sqldb,$verbindung);
	echo "blödmann6";
      $daten = "INSERT INTO $sqltable (datum,thema,update)VALUES ('$datum','$thema','$update')";
      $result = mysql_query($daten,$verbindung) or die(mysql_error());
      echo "blödmann7";
      echo "<center><table width=500 border=0>
	  <tr>
	  <td bgcolor=$tablebg style=\"border: 1px solid #000000\"><font face=$tablefont size=2><b>Der Eintrag wurde gespeichert</td>
	  </tr>
	  </table>";

	}
}
?>

				  </td>
              </tr>
            </table></center>
            </td>


<?php
include("fuss.php");
?>

so nur bis zum ersten blödmann
 
Unabhaengig davon ob register_globals nun on oder off ist sollte man grundsaetzlich mit den superglobalen Array arbeiten, so ist man auch darauf vorbereitet falls man mal den Hoster wechselt oder der aktuelle Hoster diese Einstellung aendert.

Um zu testen ob register_globals on oder off ist kannst Du diesen Code nutzen:
PHP:
<?php
if (!isset($_GET['check']))
{
 header('Location:'.$_SERVER['PHP_SELF'].'?check=1');
}
else
{
 if ($_GET['check']==$check)
 {
  echo 'register_globals=on';
 }
 else
 {
  echo 'register_globals=off';
 }
}
?>
Hab ich jetzt nicht getestet, das fertige und getestete Script liegt auf meiner Linux-Partition. Duerfte aber klappen.
 
Jetzt noch sowas hier?
HTML:
<select name=$thema size='1'>

ändern zu

HTML:
<select name="thema">

das am Besten bei allen Inputfeldern, wo du das mit '$' verwendest, und dann kommst du schonmal weiter als bis zum 1. bloedmann! ;)
 
Zurück