1. Nachrichten
  2. Forum
    1. Unerledigte Themen
    2. Forenregeln
  3. Spenden
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. camp-firefox.de
  2. witti

Beiträge von witti

  • PHP Variablenübergabe von hidden <input>

    • witti
    • 17. August 2004 um 12:55

    Jut danke erstmal für die Antwort! Das mit den Leerzeichen gibt mir noch Rätsel auf, weil ich nicht wirklich weis woher die auf einmal kommen, ich suche mal :wink: .

    Die weiteren Ratschläge hören sich sinnvoll an, werde die mal umsetzen. Die Abfrage ob evtl GET auch was liefert habe ich geschrieben, weil ich beim ersten Senden des "Formulars" für die all.php POST verwende. Im PHP-Script beim erneuten Aufrufen von all.php aber per GET die Werte übergebe, da ich damals nicht wußte wie es mit POST geht (wenn überhaupt). Praktischer wäre hier sicher das zu vereinheitlichen und eine Methode wegzulassen.

    Ok mit dem Einrücken, sieht etwas seltsam aus :) . Eigentlich mache ich das schon vernünftig, aber ich muß mich wohl noch etwas an den Meybohm Phase 5 gewöhnen :wink: .

  • PHP Variablenübergabe von hidden <input>

    • witti
    • 17. August 2004 um 09:48

    Ok, erstmal die Adresse mit Testdaten: Klick

    Hier die "Startseite":
    <body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">
    <form action = "input.php" method = "post">
    <table >
    <tr>
    <td>Koords: </td>
    <td><input name = "koords"></input></td>
    </tr>
    .
    .
    .
    <tr>
    <td>Kelo: </td>
    <td><input name = "kelo"></input></td>
    </tr>
    </table>
    <input type = "submit">
    <input type = "reset">
    </form>
    <form action="all.php" method="post">
    <select name = "race">
    <option value = "human" selected>Mensch</option>
    <option value = "kando">Kandorianer</option>
    <input name = "krit" type = "hidden" value = "x1, x2, x3, x4">
    <input name = "sort" type = "hidden" value = "ASC">
    </select>
    <br>
    <input type = "submit" id = "all" value="Alle anzeigen">
    </form>
    </body>

    hier das Script für die Eingabe, da klappt das auslesen bei POST:
    <?php

    $koords = $_POST["koords"];
    $eisen = $_POST["eisen"];
    .
    .
    $carb = $_POST["carb"];
    $kelo = $_POST["kelo"];

    if (($koords == 0) || ($eisen == 0) || ($titan == 0) || ($treib == 0) || ($h2o == 0) || ($korn == 0) || ($neutr == 0) || ($anti == 0) || ($carb == 0) || ($kelo == 0)) echo "Eingabe fehlt<br>";
    else
    {
    // Koords auseinanderschneiden
    $x = explode(":", $koords);


    $db = MYSQL_CONNECT("host", "user", "pw") or die ("<H3>Datenbankserver nicht erreichbar</H3>");
    MYSQL_SELECT_DB("db") or die ( "<H3>Datenbank nicht vorhanden</H3>");
    // echo "Eingaben vollständig<br>";

    $sql = "INSERT INTO db (x1, x2, x3, x4, eis, tit, tre, h2, korn, neu, ant, car, kel) VALUES ('$x[0]', '$x[1]', '$x[2]', '$x[3]', '$eisen', '$titan', '$treib', '$h2o', '$korn', '$neutr', '$anti', '$carb', '$kelo')";
    echo "sql = $sql";
    echo "<br>";
    $result = MYSQL_QUERY($sql) or die ("SQL-Insert-Statement nicht ausführbar");

    $code = MYSQL_ERRNO($db);

    if ($code == 1062)
    {
    echo "daten schon vorhanden<br>";
    }
    else if ($code == 0)
    {
    echo "daten eingefügt<br>";
    }
    else
    {
    echo "Code = ";
    echo $code;
    echo "<br>";
    }
    $result = MYSQL_QUERY("SELECT x1 FROM db") or die ("SQL-Select-Statement nicht ausführbar");
    $anz = MYSQL_NUM_ROWS($result) or die ("Zeilenanzahl nicht auslesbar<");
    echo "$anz Datensätze momentan vorhanden<br>";
    MYSQL_CLOSE($db) or die("Connection konnte nicht geschlossen werden");
    }

    ?>

    und hier das andere PHP-Skript:
    <?php

    function trimkoords($x1, $x2, $x3, $x4)
    {
    $x1str = strval($x1);
    $x2str = strval($x2);
    $x3str = strval($x3);
    $x4str = strval($x4);

    $koords = $x1str.':'.$x2str.':'.$x3str.':'.$x4str;

    return $koords;
    }

    if ($_POST["race"] != "") $race = $_POST["race"];
    else if ($_GET["race"] != "") $race = $_GET["race"];
    echo "race = $race";
    echo '<br>';

    $border = 105;

    if ($_POST["krit"] != "") $krit = $_POST["krit"];
    else if ($_GET["krit"] != "") $krit = $_GET["krit"];
    echo "krit = $krit";
    echo '<br>';

    if ($_POST["ord"] != "") $sort = $_POST["ord"];
    else if ($_GET["ord"] != "") $sort = $_GET["ord"];
    echo "sort = $sort";
    echo '<br>';

    $sql = '';

    $db = MYSQL_CONNECT("host", "user", "pw") or die ("<H3>Datenbankserver nicht erreichbar</H3>");
    MYSQL_SELECT_DB("db") or die ('<H3>Datenbank nicht vorhanden</H3>');

    $sort = strtoupper($sort);
    if ($race == 'human')
    {
    $sql = "SELECT x1, x2, x3, x4, eis, tit, tre, h2, korn, neu, ant, car FROM db ORDER BY $krit $sort";
    $result = mysql_query($sql);
    }
    else if ($race == 'kando')
    {
    $sql = "SELECT x1, x2, x3, x4, eis, tit, tre, h2, korn, neu, ant, kel FROM db ORDER BY $krit $sort";
    $result = mysql_query($sql);
    }
    echo "sql = $sql";
    $anz = MYSQL_NUM_ROWS($result);

    // Tabellenbeginn
    echo '<table border>';

    // Überschrift
    echo "<tr> <td><a href=\"$PHP_SELF?race=$race&krit=x1,x2,x3,x4&sort=asc\">Koords</a></td>";
    echo "<td><a href=\"$PHP_SELF?race=$race&krit=eis&sort=desc\">Eisen</a></td>";
    echo "<td><a href=\"$PHP_SELF?race=$race&krit=tit&sort=desc\">Titan</a></td>";
    echo "<td><a href=\"$PHP_SELF?race=$race&krit=tre&sort=desc\">Treib</a></td>";
    echo "<td><a href=\"$PHP_SELF?race=$race&krit=h2&sort=desc\">H2O</a></td>";
    echo "<td><a href=\"$PHP_SELF?race=$race&krit=korn&sort=desc\">Korn</a></td>";
    echo "<td><a href=\"$PHP_SELF?race=$race&krit=neu&sort=desc\">Neutro</a></td>";
    echo "<td><a href=\"$PHP_SELF?race=$race&krit=ant&sort=desc\">Anti</a></td>";
    if ($race == 'human') echo "<td><a href=\"$PHP_SELF?race=$race&krit=car&sort=desc\">Carb</a></td> </tr>";
    else if ($race == 'kando') echo "<td><a href=\"$PHP_SELF?race=$race&krit=kel&sort=desc\">Kelo</a></td> </tr>";

    for ($i = 0; $i < $anz; $i++)
    {
    // Koordinaten
    $x1 = MYSQL_RESULT($result, $i, "x1");
    $x2 = MYSQL_RESULT($result, $i, "x2");
    $x3 = MYSQL_RESULT($result, $i, "x3");
    $x4 = MYSQL_RESULT($result, $i, "x4");
    if (function_exists("trimkoords")) $ko = trimkoords($x1,$x2,$x3,$x4);
    else echo "Funktion nicht vorhanden";

    $ei = MYSQL_RESULT($result, $i, "eis");
    $ti = MYSQL_RESULT($result, $i, "tit");
    $tr = MYSQL_RESULT($result, $i, "tre");
    $h2 = MYSQL_RESULT($result, $i, "h2");
    $kn = MYSQL_RESULT($result, $i, "korn");
    $ne = MYSQL_RESULT($result, $i, "neu");
    $an = MYSQL_RESULT($result, $i, "ant");
    if ($race == "human")
    {
    $ca = MYSQL_RESULT($result, $i, "car");
    $average = $ei + $ti + $tr + $h2 + $kn + $ne + $an + $ca;
    $average = $average / 8;
    }
    else if ($race == "kando")
    {
    $ke = MYSQL_RESULT($result, $i, "kel");
    $average = $ei + $ti + $tr + $h2 + $kn + $ne + $an + $ke;
    $average = $average / 8;
    }

    // Tabellenzeile mit -zellen
    if ($average > $border) echo "<tr> <td><b>$ko</b></td>";
    else echo "<tr> <td>$ko</td>";
    .
    .
    .
    if ($an >= 110) echo "<td><font color=#00FF00>$an</font></td>";
    else if ($an <= 90) echo "<td><font color=#FF0000>$an</font></td>";
    else echo "<td><font color=#000000>$an</font></td>";

    if ($race == "human")
    {
    if ($ca >= 110) echo "<td><font color=#00FF00>$ca</font></td>";
    else if ($ca <= 90) echo "<td><font color=#FF0000>$ca</font></td>";
    else echo "<td><font color=#000000>$ca</font></td>";
    }
    else if ($race == "kando")
    {
    if ($ke >= 110) echo "<td><font color=#00FF00>$ke</font></td> </tr>";
    else if ($ke <= 90) echo "<td><font color=#FF0000>$ke</font></td> </tr>";
    else echo "<td><font color=#000000>$ke</font></td> </tr>";
    }
    }

    // Tabellenende
    echo "</table>";
    echo "<label>Fett = Durchschnitt > $border</label><br>";

    MYSQL_CLOSE($db);
    ?>

    Da bin ich mal gespannt ob es nur ein Schreibfehler irgendwo ist, ich finde ihn nicht :wink: . Ein paar unwichtige Sachen habe ich rausgekürtzt, ist aber trotzdem so lange :(

  • PHP Variablenübergabe von hidden <input>

    • witti
    • 16. August 2004 um 10:55

    Hallo,

    ich habe das Problem, daß eine identische HTML- und PHP-Seite im Firefox und im IE unterschiedlich angezeigt wird. Funktion der Seiten ist zum Einen die Eingabe von Daten in Texfelder und das Schreiben der Daten in einen DB. In der HTML-Datei sind die Initialwerte in 2 versteckten Eingabefeldern hinterlegt:

    Zitat von Editor

    <input name = "krit" type = "hidden" value = "x1, x2, x3, x4">
    <input name = "sort" type = "hidden" value = "ASC">


    In der PHP-Seite wird das folgendermaßen ausgelesen:

    Zitat von Editor

    if ($_POST["krit"] != "") $krit = $_POST["krit"];
    else if ($_GET["krit"] != "") $krit = $_GET["krit"];

    Damit wird ein SQL-Statement zusammengebaut:

    Zitat von Editor

    SELECT x1, x2, x3, x4, eis, tit, tre, h2, korn, neu, ant, kel FROM sb ORDER BY x1, x2, x3, x4 ASC

    Das klappt beim IE problemlos. Wird die Seite allerdings mit dem Firefox geöffnet, übergibt er irgendwie nicht die Werte und es kommt nur ein unvollständiges Statement zusammen.

    Zitat von Editor

    SELECT x1, x2, x3, x4, eis, tit, tre, h2, korn, neu, ant, kel FROM sb ORDER BY

    Was kann man da machen damit die Werte übergeben werden? Ich benutze den Firefox 0.9.x, weis nicht mehr genau. Bei Bedarf kann ich das noch nachliefern.

Unterstütze uns!

Jährlich (2025)

60,4 %

60,4% (392,55 von 650 EUR)

Jetzt spenden
  1. Kontakt
  2. Datenschutz
  3. Impressum
Community-Software: WoltLab Suite™
Mastodon