Hallo zusammen!
ich bin gerade total am verzweifeln. Ich habe mir ein Skript geschrieben welches einfach nicht gehen will. Ich habe es sogar schon ein Mal komplett neu geschrieben um sicher zu sein, dass es kein Tippfehler oder so ist...
Das ganze sieht so aus bzw. läuft so ab:
Eingangsformular: Hier wählt der User in diversen Feldern Kriterien für eine Abfrage auf - Drückt auf Senden
Übersicht: Hier erhält der User das Ergebnis "seiner" Abfrage in Tabellenform. Die Tabelle enthätl zudem 2 Checkboxen die angeklickt werden können. (austragen und ausdrucken mit namen. Die Werte dieser Felder stellen jeweils den Primärschlüssel dieses Datensatzes dar. Die angeklickten Infos werden jeweils in ein array ausdrucken und austragen gespeichert. Nach einem Klick auf Senden baut sich diese übersicht neu auf UND es öffnet sich in Popup in dem das array $ausdrucken zur Verfügung stehen soll - tut es aber nicht *snief* Ich bekomem alle daten dort hin aber nciht dieses blöde array.
Kann mir jemand von euch sagen an was das liegen könnte? (ich Poste jetzt einfach mla die zwei Dateien übersicht und popup - SORRY für die Länge - nur ich kann den Fehler nicht eingrenzen.
Ach ja, das ganze spielt sich in einem div-frame "System" ab. Wobei in diesem die Zeile:
$_SESSION['ausdrucken'] = $_REQUEST['ausdrucken'];
gesetzt ist.
Ich habe irgendwie, das Gefühl. dass das array zwar ankommt aber leer ist. Wenn ich nämlich im popup eine if(isset abfrage laufen lasse kommt als Ergebnis raus, dass das ganze gestzt ist...
ich bin gerade total am verzweifeln. Ich habe mir ein Skript geschrieben welches einfach nicht gehen will. Ich habe es sogar schon ein Mal komplett neu geschrieben um sicher zu sein, dass es kein Tippfehler oder so ist...
Das ganze sieht so aus bzw. läuft so ab:
Eingangsformular: Hier wählt der User in diversen Feldern Kriterien für eine Abfrage auf - Drückt auf Senden
Übersicht: Hier erhält der User das Ergebnis "seiner" Abfrage in Tabellenform. Die Tabelle enthätl zudem 2 Checkboxen die angeklickt werden können. (austragen und ausdrucken mit namen. Die Werte dieser Felder stellen jeweils den Primärschlüssel dieses Datensatzes dar. Die angeklickten Infos werden jeweils in ein array ausdrucken und austragen gespeichert. Nach einem Klick auf Senden baut sich diese übersicht neu auf UND es öffnet sich in Popup in dem das array $ausdrucken zur Verfügung stehen soll - tut es aber nicht *snief* Ich bekomem alle daten dort hin aber nciht dieses blöde array.
Kann mir jemand von euch sagen an was das liegen könnte? (ich Poste jetzt einfach mla die zwei Dateien übersicht und popup - SORRY für die Länge - nur ich kann den Fehler nicht eingrenzen.
Ach ja, das ganze spielt sich in einem div-frame "System" ab. Wobei in diesem die Zeile:
$_SESSION['ausdrucken'] = $_REQUEST['ausdrucken'];
gesetzt ist.
Ich habe irgendwie, das Gefühl. dass das array zwar ankommt aber leer ist. Wenn ich nämlich im popup eine if(isset abfrage laufen lasse kommt als Ergebnis raus, dass das ganze gestzt ist...
PHP-Code:
<?php
//Uebersichtsseite mit der Auswahlmöglichkeit der zu druckenden und auszutragenden Kunden
//zu registrierende Variablen
session_register ('bs', 'betr_kz', 'sort');
//if-anweisung zur Übernahme der Variablen aus dem Formular
if(isset($_REQUEST['eingang_submit'])) {
//Uebernahme der Variablen aus dem Eingangsformular
$bs = $_REQUEST['eingang_bs'];
$betr_kz = $_REQUEST['eingang_betr_kz'];
$sort = $_REQUEST['eingang_sort'];
} else {
//Uebernahme der Variablen aus der Session
$bs = $_SESSION['bs'];
$betr_kz = $_SESSION['betr_kz'];
$sort = $_SESSION['sort'];
}
//if-anweisung die aktiv wird wenn der Drucken Button im Formular gedrückt wurde
//hier werden die angeklickten Felder in die DB geschrieben
if(isset($_REQUEST['uebersicht_submit'])) {
//Uebernahme der Arrays, die die namen der Checkboxen enthalten
if(isset($_REQUEST['ausdrucken'])) {
$ausdrucken = $_REQUEST['ausdrucken'];
}
if(isset($_REQUEST['austragen'])) {
$austragen = $_REQUEST['austragen'];
}
//zu TESTzwecken um zu sehen, ob das array richtig übernommen wurde
foreach($_SESSION['ausdrucken'] as $wert) {
echo "$wert <br />";
}
echo "$d_feld und $n_feld";
//hier gehts wieder "normal" weiter
//ausdrucken
if(isset($ausdrucken)) {
$sql_query = "UPDATE sd SET $d_feld = 'ja' WHERE(";
foreach($ausdrucken as $wert) {
$sql_query .= "id = '$wert' OR ";
}
$sql_query .= " 1=2)";
$sqlab = mysql_query($sql_query);
}
//Übergehen / austragen
if(isset($austragen)) {
$sql_query = "UPDATE sd SET $n_feld = 'ja' WHERE(";
foreach($austragen as $wert) {
$sql_query .= "id = '$wert' OR ";
}
$sql_query .= " 1=2)";
$sqlab = mysql_query($sql_query);
}
}
//Ende des Bereichs der für das Eintragen der angeklickten Felder zuständig ist
//######################################################################################
//Anzeige der Daten inkl. Seitenzahlen
//Uebernahme der dafür notwendigen Variablen:
@$start = $_REQUEST['start']; //startwert für die SQL - Abfrage
//Erstellen der notwendigen Arrays
$austragen = array(); //Kunden, die nicht angeschrieben werden sollen
$ausdrucken = array(); //Kunden, die sofort angeschrieben werden sollen
//Ueberschrift
echo "<h2>Trefferliste für Betreuerkennzeichen: <b>$betr_kz</b></h2>\n";
//Start des Formulars und der Tabelle für die Ausgabe der Treffer
echo "<form action=\"index.php?PHPSESSID=$sid§ion=uebersicht&popup=ja\" method=\"post\">\n";
echo " <table border=\"1\">\n";
echo " <tr>\n";
echo " <th>Kontonummer</th>\n";
echo " <th>Name, Vorname</th>\n";
echo " <th>Telefonnummer priv.</th>\n";
echo " <th>Telefonnummer gesch.</th>\n";
echo " <th>anschreiben</th>\n";
echo " <th>nicht anschreiben</th>\n";
echo " </tr>\n";
//SQL Query
$sql_query = "SELECT * FROM sd";
$sql_query .= " WHERE primaer_bt = '$betr_kz'";
$sql_query .= " AND bs = '$bs'";
//$ja = "ja";
//$sql_query .= " AND '$d_feld' <> '$ja'";
//$sql_query .= " AND '$n_feld' <> '$ja'";
$sql_query .= " ORDER BY '$sort'";
//Erzeugen der Abfrage an sich
$sqlab=mysql_query($sql_query);
//Zählen der Treffer
$num_item=mysql_num_rows($sqlab);
//Anzahl der Seiten
$seite=$num_item/$max_item;
if ($seite>1) {
for ($i=0;$i<$seite;$i++) {
@$zeile.="<a href=\"index.php?section=uebersicht&PHPSESSID=$sid&start=".($i*$max_item)."\">".($i+1)."</a> ";
}
}
if(!$start) {
$start="0"; //falls keine Seite gewählt wurde von 0 anfangen
}
$sql_query.=" limit ".$start.",".$max_item; //$max_item Items ab $start ausgeben
$sqlab = mysql_query($sql_query);
include("inc/fehlerausgabe.inc.php");
while ($res = mysql_fetch_array($sqlab)) {
$id = $res['id'];
$pb = $res['primaer_bt'];
$sn = $res['stammnummer'];
$titel = $res['akad_titel'];
$anrede = $res['anrede'];
$vorname = $res['vorname'];
$nachname = $res['nachname'];
$tel_priv = $res['tel_priv'];
$tel_gesch = $res['tel_gesch'];
//Start der Zeilen für die Tabelle
echo " <tr>\n";
echo " <td>$sn</td>\n";
echo " <td>$nachname, $vorname</td>\n";
if(!isset($tel_priv)) {
echo " <td> </td>\n";
} else {
echo " <td>$tel_priv</td>\n";
}
if(!isset($tel_gesch)) {
echo " <td> </td>\n";
} else {
echo " <td>$tel_gesch</td>\n";
}
echo " <td><input type=\"checkbox\" name=\"ausdrucken[]\" value=\"$id\" /></td>\n";
echo " <td><input type=\"checkbox\" name=\"austragen[]\" value=\"$id\" /></td>\n";
echo " </tr>\n";
}
//Sendebutton und Reset Button
echo " <tr>\n";
echo " <td colspan=\"6\"><input type=\"Submit\" name=\"uebersicht_submit\" value=\"Diese Seite Drucken und Eintragen\">\n";
echo " <input type=\"reset\"></td>\n";
echo " </tr>\n";
//Ende der Tabelle und des Formulars
echo " </table>\n";
echo "</form>\n";
if(isset($zeile)) {
echo "<p>Seiten: $zeile</p>";
}
?>
PHP-Code:
//Hier müssen noch die Einstellungen bezüglich css etc. eingestellt werden
echo " </head>\n";
echo "<body>\n";
echo "<p><a href=\"javascript:window.print()\">Diese Seite drucken</a></p>";
//#############################***ENDE***HTML_HEAD##################################
/**
$ausdrucken = array();
$ausdrucken[] = 1;
$ausdrucken[] = 2;
**/
$ausdrucken = $_SESSION['ausdrucken'];
if(isset($_SESSION['ausdrucken'])) {
echo "warum geht das nicht das array ist doch da...";
}
foreach($ausdrucken as $wert) {
echo "$wert <br />";
}
echo $_SESSION['betr_kz'];
//Verbindungsaufbau zu Datenbank
include("../inc/verbindung.inc.php");
Kommentar