php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.06.2008, 14:48  
Neuer Benutzer
 
Registriert seit: 02.06.2008
Beiträge: 4
hessebou befindet sich auf einem aufstrebenden Ast
Standard Tabelle mit Checkboxen

Hallo,

ich bin neu hier und ebenfalls auf dem Gebiet PHP relativ neu. Habe zwar vor einiger Zeit mal was damit gemacht, aber wie es immer ist wenn man es nicht laufend macht, man vergisst vieles schnell. Ich habe eine DB mit Druckern und folgenden Feldern "ID, SERVER; SHARE; DESCRIPTION und LOCATION". Auslesen klappt wunderbar. Das ganze wird in einer Tabelle mit einer Checkbox am Ende dargestellt. Ich möchte über diese Seite Drucker installieren lassen mit dem Befehl
PHP-Code:
$outputs = `rundll32 printui.dll,PrintUIEntry /in /n \\\\SERVER\\SHARE`;
echo 
"<pre>$outputs</pre>"
Das klappt auch bei einem einzel Aufruf wunderbar, nun möchte ich anhand eines Einbinden Buttons am Ende der Tabelle alle "checkt" makierten Drucker mit diesem Befehl einbinden lassen. Und genau da liegt mein Problem und ich hoffe ihr könnt mir weiterhelfen

Ich danke euch schon mal vorab.
Grüße
Hessebou
hessebou ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 02.06.2008, 15:19  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Ich verstehe deine Frage nicht ganz. Viellecht zeigst du uns mal was du schon hast. Möglicherweise hast du vergessen, die Checkboxen Als Array's zu benennen.
__________________
Gruss
L
lazydog ist offline  
Alt 02.06.2008, 18:09  
Erfahrener Benutzer
 
Registriert seit: 01.06.2008
Beiträge: 179
PHP-Kenntnisse:
Fortgeschritten
Daniel befindet sich auf einem aufstrebenden Ast
Standard

Du musst die folgendermaßen definieren:

Code:
<input type="checkbox" name="printers[]" value="xyz" />
Dann sind alle ausgewählten Drucker im Array $_POST['printers'] vorhanden.

(Oder je nach deiner method auch $_GET)
Daniel ist offline  
Alt 03.06.2008, 06:43  
Neuer Benutzer
 
Registriert seit: 02.06.2008
Beiträge: 4
hessebou befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von lazydog Beitrag anzeigen
Ich verstehe deine Frage nicht ganz. Viellecht zeigst du uns mal was du schon hast. Möglicherweise hast du vergessen, die Checkboxen Als Array's zu benennen.
PHP-Code:
echo "<form name='printer' method='Post' action='install.php' enctype='multipart/form-data'>";
echo 
"<table border=1 width=100%>
    <tr>
        <td>Freigabe</td>
        <td>Beschreibung</td>
        <td>Ort</td>
        <td> </td>
    </tr>
"
;
$result mysql_query("SELECT * FROM print_printer");
while (
$inhalt mysql_fetch_object($result)){;
echo 
"

    <tr>
        <td>$inhalt->print_share</td>
        <td>$inhalt->print_description</td>
        <td>$inhalt->print_location</td>
        <td><input type='checkbox' name='printers[]' value='"
.$inhalt->print_ID."'></td>";
}
echo 
"</tr>
    <td></td><td></td><td></td><td><input type='submit' value='Installieren' name='abschicken'></form></td>"
;
echo 
"</table>"
Hier ist mein Code bislang, relativ überschaubar
Gruss
hessebou ist offline  
Alt 03.06.2008, 08:15  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Wenn du schon nach der Zeile mit dem while ein Semikolon schreibst, wird natürlich auch keine Schleife ausgeführt (bzw. sie wird zwar ausgeführt, aber macht einfach nichts).
Den Teil wo du die Daten dann auswertest (install.php), der fehlt noch. Du musst dir einfach merken, dass $_POST['printers'] nun ein Array ist, und in einer Schleife verarbeitet werden muss.
__________________
Gruss
L
lazydog ist offline  
Alt 03.06.2008, 08:21  
Neuer Benutzer
 
Registriert seit: 02.06.2008
Beiträge: 4
hessebou befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von lazydog Beitrag anzeigen
Wenn du schon nach der Zeile mit dem while ein Semikolon schreibst, wird natürlich auch keine Schleife ausgeführt (bzw. sie wird zwar ausgeführt, aber macht einfach nichts).
Den Teil wo du die Daten dann auswertest (install.php), der fehlt noch. Du musst dir einfach merken, dass $_POST['printers'] nun ein Array ist, und in einer Schleife verarbeitet werden muss.
Hi,

danke soweit. Die Datei "install.php" ist bislang noch leer. Dort sollen die ausgewählten Drucker mit Hilfe einer Schleife aus dem Array gelesen werden und dann mit dem Befehl
PHP-Code:
$outputs = `rundll32 printui.dll,PrintUIEntry /in /n \\\\SERVER\\SHARE`;
echo 
"<pre>$outputs</pre>"
weiterverarbeitet werden. Soweit bin ich noch nicht "install.php" besteht bislang nur aus $_POST['printers'] und einem echo um zu schauen ob die Daten ankommen. Funktioniert leider noch nicht so wirkleich.

Gruss
hessebou ist offline  
Alt 03.06.2008, 08:49  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Das echo wird dir höchstens «array()» ausgeben. var_dump() oder print_r() wären hilfreicher.
Da $_POST['printers'] die einzige Variable ist, die du übergibst, musst du die entsprechenden Angaben erneut aus der DB holen. Was du dazu brauchst, kann ich dir nicht sagen, da ich nicht mit MS-Produkten arbeite. Aber einfach als Beispiel:
PHP-Code:
$sql "
    SELECT
       print_share,
       print_name
    FROM
        print_printer
    WHERE
        print_ID IN ( " 
implode(', '$_POST['printers']) . ")"
liefert dir die Daten zu allen selektierten Druckern.
__________________
Gruss
L
lazydog ist offline  
Alt 03.06.2008, 13:00  
Neuer Benutzer
 
Registriert seit: 02.06.2008
Beiträge: 4
hessebou befindet sich auf einem aufstrebenden Ast
Standard

Dann sieht das Konstrukt also so aus
PHP-Code:
$sql mysql_query("
    SELECT
       print_share,
       print_name
    FROM
        print_printer
    WHERE
        print_ID IN ( " 
implode(', '$_POST['printers']) . ")");
        while (
$inhalt mysql_fetch_object($sql)){
echo 
"
<table>
    <tr>
        <td>$inhalt->print_share</td>
        <td>$inhalt->print_description</td>
        <td>$inhalt->print_location</td> 
    </tr>
</table>"
;

Darauf erhalte ich allerdings die Meldung
Code:
Warning:  mysql_fetch_object(): supplied argument is not a valid MySQL result resource in E:\xampp\htdocs\vhs\printer\install.php on line 19 
Ich begreife es einfach nicht wirklich. Istein Logik Problem bei mir, habe zu lange nicht damit gearbeitet
-------------------
Okay, habe das Problem gefunden. Es heißt nicht print_name sondern Print_server

Geändert von hessebou (03.06.2008 um 13:29 Uhr).
hessebou ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Checkboxen dynamisch in Tabelle erzeugen nussbaum PHP Tipps 2007 4 21.01.2007 16:50
Zeilenanzahl einer tabelle mit WHERE aber ohne schleife? sovereign Datenbanken 13 17.04.2006 20:34
[Erledigt] Problem mit dem Füllen einer Tabelle über Formular PHP Tipps 2006 18 10.01.2006 12:51
Problem mit Anzeige einer Tabelle mit dem Firefox? HTML, Usability und Barrierefreiheit 8 28.11.2005 15:08
[Erledigt] Tabelle aktualisieren Datenbanken 3 23.11.2005 09:54
checkboxen wizzardxx PHP Tipps 2005-2 7 16.10.2005 22:58
[Erledigt] Problem mit mySQL Datenbanken 7 27.09.2005 12:06
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
tabelle in tabelle ohne aussenrand noskule HTML, Usability und Barrierefreiheit 6 25.08.2005 14:17
checkboxen in tabelle wählen hekto PHP Tipps 2005 2 12.04.2005 13:19
HTML Tabellenzeile in Tabelle einfügen? Datenbanken 2 28.01.2005 00:28
Tabelle in Tabelle ausrichten HTML, Usability und Barrierefreiheit 7 03.01.2005 14:32
Auslesen mySQL tabelle und ausgabe als html Calli PHP Tipps 2004-2 3 21.12.2004 16:51
Sortieren anhand einer zweiten Tabelle PHP Tipps 2004 6 20.09.2004 09:03
HILFE: Column count doesn't match value count at row 1 Datenbanken 17 12.06.2004 16:45

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
checkbox tabelle ausrichten, checkbox php ausrichtung in table

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:04 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum