php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.06.2005, 12:41  
Erfahrener Benutzer
 
Registriert seit: 30.05.2005
Beiträge: 222
PHP-Kenntnisse:
Fortgeschritten
Cyberbob_at_tot
Cyberbob_at_tot eine Nachricht über ICQ schicken
Standard Checkboxen checked in String zusammenfassen ?

Hallo,
habe da noch ein Problem,
habe eine Gruppe von Checkboxen mit den Spaltennamen belegt, nun soll in der new_whrite.php Datei diese ausgewertet werden, und ein String entstehen. Wenn der erste checked ist dann String=String+1 wenn der zweite nicht dann auch nichts machen, beim dritten checked dann String= String+,3 sodas ein String entsteht wo "1,3" drin steht!
Nur mir fällt dazu nix ein! sorry kenie Ahnung! so weit wie unten bin ich schon mal!

Datei:new.php
PHP-Code:
<?php
...
$menge mysql_num_fields($sql_query);
  for(
$x=0;$x<$menge;$x++)
    {
    
$colname=mysql_field_name($sql_query,$x);
    echo
"<tr>
        <td colspan=2><div><input type=checkbox name=$spalten value=$colname>$colname</div></td>
        <tr>"
;
    }
...
?>
Datei: new_write.php
PHP-Code:
<?php

include("../mysqlcon.inc.php");

//Variablen aus dem Formular die im Superarray stehen, dieses ist global überall verfügbar
 
$username        = isset($_POST["username"])        ? $_POST[username]:"Stamwert";
 
$passwort        = isset($_POST["passwort"])    ? $_POST[passwort]:"Stamwert";
 
$rechte        = isset($_POST["rechte"])        ? $_POST[rechte]:"Stamwert";
 
 if (
$rechte=="1 - Nur lesen"){$rechte=1;}
 if (
$rechte=="2 - lesen und Schreiben"){$rechte=2;}
 if (
$rechte=="3 - Admin"){$rechte=3;}
 
 
$passwort=base64_encode($passwort);
 
 
 
$SQL_Befehl="
 INSERT INTO user (user,pwd,rechte) VALUES ('$username', '$passwort', '$rechte')"
;
 
 
//Datensatz hinzufügen
 
$result mysql_query($SQL_Befehl);
    
 if (
$result)   {
                echo
"User erfolgreich angelegt";
                }
                else
                {
                echo
"Anlegen des Users fehlgeschlagen";
                }
echo
"<p align=center><a href=\"user.php\" target=_self>zurück</a></p>";            
?>
hier feld noch alles was die auswertung angeht!

Könnt ihr mir da Helfen ?

BIG BIG THX

Cyberbob
__________________
***********************************
The only winning move is not to play!
***********************************
Cyberbob_at_tot ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 06.06.2005, 12:49  
Gast
 
Beiträge: n/a
Standard

warum gibst du der checkbox nicht den namen
name=rules[$spalte]
dann kannst du doch besser abfragen

[edit]
dann nur String=implode(',',$_POST['rules']);
natürlich eingaben immer prüfen
 
Alt 06.06.2005, 13:13  
Erfahrener Benutzer
 
Registriert seit: 30.05.2005
Beiträge: 222
PHP-Kenntnisse:
Fortgeschritten
Cyberbob_at_tot
Cyberbob_at_tot eine Nachricht über ICQ schicken
Standard

bin zu blöd dafür!

habe nun in der Schleife gesagt
PHP-Code:
<?php
<td colspan=2><div><input type=checkbox name=spalten[$xvalue=$colname>$colname</div></td>
?>
und bei der abfrage...
PHP-Code:
<?php
$spaltenstring
=implode(',',$_POST[spalten]);
echo 
$spaltenstring;
?>
Es kommt aber nur "on" raus keine Ahnung wieso!
__________________
***********************************
The only winning move is not to play!
***********************************
Cyberbob_at_tot ist offline  
Alt 06.06.2005, 13:34  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

1. html-attribute sind in doppelte anführungszeichen zu schreiben.
2.
PHP-Code:
<?php
$spaltenstring 
'';
if(isset(
$_POST['spalten'])) {
    
$spaltenstring implode(',',array_keys($_POST['spalten']));
}
var_dump($spaltenstring);
?>
axo ist offline  
Alt 06.06.2005, 13:37  
Gast
 
Beiträge: n/a
Standard

da du ja den namen nicht die werte der checkboxen haben willst
wie axo schrieb
 
Alt 06.06.2005, 14:27  
Erfahrener Benutzer
 
Registriert seit: 30.05.2005
Beiträge: 222
PHP-Kenntnisse:
Fortgeschritten
Cyberbob_at_tot
Cyberbob_at_tot eine Nachricht über ICQ schicken
Standard

@axo
1.kann man im Echo die " nicht weglassen weil das ganze schon im "" steht ?
2.arrry_keys bewirkt ?
var_dump ?

EDIT:
an welcher Stelle kann ich alle werte des arrays um eins erhöhen, da meine werte bei 1 nicht bei 0 anfangen?
bei der For schleife gehts nicht und bei den namen direkt auch nicht da packt er dann immer 1+1 als string rein! komisch
__________________
***********************************
The only winning move is not to play!
***********************************
Cyberbob_at_tot ist offline  
Alt 06.06.2005, 14:31  
Gast
 
Beiträge: n/a
Standard

1.) manual
2.) manual

array_keys gibt ein array der schlüssel eines arrays aus
var_dump(val); gibt zusätzliche angaben wie strlen zu val aus
 
Alt 06.06.2005, 14:38  
Erfahrener Benutzer
 
Registriert seit: 30.05.2005
Beiträge: 222
PHP-Kenntnisse:
Fortgeschritten
Cyberbob_at_tot
Cyberbob_at_tot eine Nachricht über ICQ schicken
Standard

OK das erhöhen um eins habe ich nun so gelösst das ich einfach vor der Zuweisung des Namen x um eins erhöhe und danach wieder x um eins runter!
ist einfach und funktioniert
__________________
***********************************
The only winning move is not to play!
***********************************
Cyberbob_at_tot ist offline  
Alt 06.06.2005, 23:31  
Gast
 
Beiträge: n/a
Standard

Müssen es die Namen sein oder reicht eine eindeutige Zuordnung? Wenn letzteres, kannst Du die Werte der checkboxen so vergeben, dass jede Kombination eine einzelne eindeutige Zahl als SUmme liefert.
Z.B.
Code:
<form method="POST">
	<input type="checkbox" name="check[]" value="1" />
	<input type="checkbox" name="check[]" value="2" />
	<input type="checkbox" name="check[]" value="4" />
	<input type="checkbox" name="check[]" value="8" />
</form>
Wenn Du nun array_sum über $_POST läufen läßt, erhälst Du z.B. den Wert 9. Damit ist klar, dass die erste (Wert 1) und die letzte (Wert checkbox ausgewählt wurden; es gibt keine anderen Kombination, die den Wert 9 ergibt.
Zum Abtesten, ob die erste Box ausgewählt wurde, kannst Du if ($summe & 1) verwenden, für die zweite Box ($summe & 2) usw.
Allgemein ($summe & (2^$i)) mit i=[0...n-1] bei n Boxen.
 
Alt 06.06.2005, 23:47  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

lol... bitrechnung rocks. ich hätt's zwar mit name="check[id1]", name="check[id2]" gelöst, aber die lösung rockt.
axo 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
[Erledigt] Max Anzahl Checkboxen Hu5eL JavaScript, Ajax und mehr 2 25.06.2008 15:37
Event abfangen Ambience JavaScript, Ajax und mehr 4 30.08.2007 14:36
Zustand der Checkboxen auslesen Pimbolie1979 PHP Tipps 2007 4 10.07.2007 20:39
Aktivieren einer Checkbox aktiviert viele andere Checkboxen buggybugga HTML, Usability und Barrierefreiheit 3 12.03.2007 16:23
[JS] Checkbox setzt andere checkboxen auf checked phpfortgeschrittener HTML, Usability und Barrierefreiheit 2 13.03.2006 17:30
checkboxen checked flual2000 PHP Tipps 2007 6 02.11.2005 17:47
checkboxen wizzardxx PHP Tipps 2005-2 7 16.10.2005 22:58
(schnellere) Funktion zum Zusammenfassen von CSS PHP-Fortgeschrittene 21 08.08.2005 16:47
alle checkboxen auswählen? $$$ ThiKool $$$ HTML, Usability und Barrierefreiheit 8 26.07.2005 21:05
Problem Checkboxen - string mit Zahlen die gecheckten setzen Cyberbob_at_tot PHP Tipps 2005-2 5 11.06.2005 11:36
(inhalte) der checkboxen aus mysql auslessen PHP Tipps 2005-2 4 07.06.2005 14:02
where string von einer funktion zu anderen transportieren PHP Tipps 2005 5 03.03.2005 16:29
php code als string umwandeln PHP Tipps 2005 8 23.02.2005 18:03
String auf bestimmte Breite (Pixel) kuerzen... mudo PHP-Fortgeschrittene 25 28.01.2005 19:07
[Erledigt] String mit Leerzeichen auffüllen HTML, Usability und Barrierefreiheit 2 27.10.2004 18:47

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
checkbox zusammenfassen, checkboxen wenn 1 ausgewählt dann 2 nicht verfügbar, checkboxen zusammenfassen php, checkboxen zusammenfassen, checked string, php mehrere checkboxen zusammenfasse, 1 checkbox 3 strings php, string checkbox auswählen, mysql checkbox auslesen leerzeichen in hochkommas, checkboxen zu einer zusammenfassen, php if in zeichenkette checked, checkbox array zusammenfassen, php zu string checkboxen, bestimmte spalten bei php mit checkboxen auswehlen, html einträge checkbox zusammenfassen, php checkbox checked, checkbox in string umwandeln, php string checked, html checkbox zusammenfassen, php checkboxen kombinieren

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:17 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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.