globals-Problem mal genau umgekehrt! :(

Alles, was PHP betrifft, kann hier besprochen werden.

globals-Problem mal genau umgekehrt! :(

Postby Rick83 » 20. April 2006 19:24

Hi!

Also, vorab gleich: JA, ich weiß das mit dem register_globals bereits. :)

Mein Problem sieht so aus: Ich nutze am Mac MAMP (sehr ähnlich zu XAMPP) und da klappt alles wunderbar. Ich lese Formular-Daten per $_POST['x'] aus.
Nun habe ich auf einem Windows-PC XAMPP installiert (klappt echt einwandfrei!) und gleich mal getestet. Nun hab ich aber das Problem, dass er einfach keine Formulardaten übertragen will. Ich hab die php.ini schon durchforstet, finde aber keinen Hinweis... Vor allem geht exakt das selbe php-file am Mac völlig problemlos.

Hat jemand eine Idee, was da sein könnte?

Lg, Rick
Rick83
 
Posts: 5
Joined: 20. April 2006 19:13

Postby Wiedmann » 20. April 2006 19:32

Ein kurzes(!) (komplettes) Beispielscript das nicht geht?

Welcher XAMPP/PHP?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Rick83 » 20. April 2006 19:44

ich nutze das aktuelle XAMPPlite mit PHP5...

hier das script:

Code: Select all
<form name="edit2" method="post" action="edit2.php">
<table border="0">
   <tr>
      <td width="50" rowspan="5" valign="top"><img src="../sidebar_edit.png" /></td>

<?php

include("../dbconnect.php");

$geraete=mysql_query("SELECT ger_id,ger_name,ger_kennzeichen FROM geraete ORDER BY ger_id ASC;");
$baustellen=mysql_query("SELECT baus_id,baus_name FROM baustellen ORDER BY baus_name ASC;");

$zutei=mysql_query("SELECT zutei_ger_id,zutei_baus_id,zutei_date1,zutei_time1,zutei_date2,zutei_time2 FROM geraete_zuteilung WHERE geraete_zuteilung.zutei_id=$_POST[edit];");

$zutei_ger_id=mysql_result($zutei,0,0);
$zutei_baus_id=mysql_result($zutei,0,1);
$zutei_date1=mysql_result($zutei,0,2);
$zutei_time1=mysql_result($zutei,0,3);
$zutei_date2=mysql_result($zutei,0,4);
$zutei_time2=mysql_result($zutei,0,5);

?>


die query kann er schon nicht mehr ausführen, weil das $_POST nicht funktioniert. mit einem echo sieht man auch deutlich, dass nichts übermittelt wurde.
aber: die vorhergehende seite mit dem formular hat die richtigen werte eindeutig da, das ist auch im quelltext ersichtlich. *hm*
Rick83
 
Posts: 5
Joined: 20. April 2006 19:13

Postby Wiedmann » 20. April 2006 20:07

weil das $_POST nicht funktioniert.

Es gibt doch gar kein Formular-Feld, dass einen Wert per POST übertragen könnte?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Rick83 » 20. April 2006 21:08

ah doch, das liegt in einer anderen datei, siehe hier (kurzer auszug):

Code: Select all
$zuteilung=mysql_query("SELECT ger_id,ger_name,ger_kennzeichen,baus_id,baus_name,zutei_id,zutei_date1,zutei_time1,zutei_date2,zutei_time2 FROM geraete,baustellen,geraete_zuteilung WHERE geraete.ger_id=geraete_zuteilung.zutei_ger_id AND geraete_zuteilung.zutei_baus_id=baustellen.baus_id ORDER BY zutei_date2 DESC;");

echo "<td>".$row["ger_id"]." | ".$row["ger_name"]." - ".$row["ger_kennzeichen"]."</td>";
echo "<td>".$row["baus_id"]." | ".$row["baus_name"]."</td>";
echo "<td>".$row["zutei_date1"]."</td>";
$time1=$row["zutei_time1"];
$time1_sub=substr($time1,0,5);
echo "<td>$time1_sub</td>";
echo "<td>".$row["zutei_date2"]."</td>";
$time2=$row["zutei_time2"];
$time2_sub=substr($time2,0,5);
echo "<td>$time2_sub</td>";
echo "<form name='edit' method='post' action='edit.php'>";
echo "<td class='trbg'><input name='edit' type='hidden' value='".$row["zutei_id"]."'><input name='submit' type='image' src='../edit.png' value='edit'></td>";
echo "</form>";
echo "<form name='delete' method='post' action='delete.php'>";
echo "<td class='trbg'><input name='delete' type='hidden' value='".$row["zutei_id"]."'><input name='submit' type='image' src='../delete.png' value='delete'></td>";
echo "</form>";
echo "</tr>";
}


mir würde es ja noch einleuchten, wenn schon die sql-abfrage in diesem formular fehlerhaft wäre oder so, dann könnte er natürlich keine werte weitergeben.
aber das klappt ja noch alles, im quelltext sind auch die richtigen values zu sehen. nur das übermitteln klappt nicht. :(
Rick83
 
Posts: 5
Joined: 20. April 2006 19:13

Postby Wiedmann » 20. April 2006 21:53

Bei dem 2. Script ist das HTML defekt. Hier würde ich schonmal gar keine Aussage treffen können, ob ein/jeder Browser überhaupt das tut was du willst.

Kannst du das Verhalten auch mit korrekten Dateien, wie z.B. den XAMPP-Demoseiten auch nachvollziehen? Die dürften ja dann auch nicht tun.

Oder wegen mir das Beispielscript von php.net, Kapitel "externe Variablen"?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Rick83 » 20. April 2006 22:11

bist du dir sicher? ist ja nur ein auszug, normal ist die datei natürlich viel umfangreicher, sprich einiges vom html geht natürlich ab.

ich bin mir eigentlich fast sicher, dass der code passen sollte...
werd morgen aber mit einer ganz einfachen seite einen test machen.

bisweilen danke schon mal!

lg, rick
Rick83
 
Posts: 5
Joined: 20. April 2006 19:13

Postby Rick83 » 21. April 2006 07:32

juhu, es klappt!

es war doch tatsächlich so, dass es im html noch probleme gab - safari hat das freundlicherweise zugelassen, opera und ie waren nicht ganz so freundlich. :)
ich musste die tags im neuen stil (also etwa <img src='x' />) schließen und das form in die td reinstellen (was leider optische nachteile hat, aber egal).

danke für die hilfe, jetzt kann ich endlich wieder gut schlafen. :wink:
Rick83
 
Posts: 5
Joined: 20. April 2006 19:13

Postby archangel » 25. April 2006 13:05

ich musste die tags im neuen stil (also etwa <img src='x' />) schließen und das form in die td reinstellen (was leider optische nachteile hat, aber egal).


"Optische Nachteile"? Was denn? Abstände, Rahmen?
Verpass' der Tabelle ein id-Attribut und Du kannst in Deiner CSS-Datei folgendes schreiben
Code: Select all
#idDerTabelle form {
margin:0;
padding:0;
border:none;
}

Das sollte zumindest irgendwelche Abstände korrigieren. Gegen Umbrüche hilft evtl. auch die Angabe
Code: Select all
 
display:inline;
describe europe Ltd.
Web-Programmierung, Datenbanken, Schulung
http://www.d-scribe.de/
archangel
 
Posts: 15
Joined: 15. November 2004 15:59


Return to PHP

Who is online

Users browsing this forum: No registered users and 6 guests