SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 12.01.2010, 00:15:02
betlor5 betlor5 ist offline
Anfänger
 
Registriert seit: Jan 2010
Alter: 44
Beiträge: 1
Multiple Select auswerten liefert Probleme

Hi,

ich weis, dass dies schön des öfteren diskutiert wurde, jedoch finde ich einfach nicht den Fehler in meinem Code und erhoffe mir hier hilfe:

HTML-Code:

HTML-Code:
<form method="post" action="Verwaltung.php" name="reih">
<table width="626" border="1">
  <tr>
    <td colspan="3"><strong>Bearbeite Reihenfolge der Subgruppen für:</strong></td>
  </tr>
  <tr>
   <td width="205" height="28">AG:</td><td colspan="2"><select name="agname" onchange="selectAgreihenfolge()">
     <option value="">W&auml;len</option>
     <?php
    for($i=0;$i<sizeof($ag_ary);$i++)
    {
        echo "<option value='".$ag_ary[$i][0]."'>".$ag_ary[$i][0]."</option>";
    }
    ?>
   </select></td>
    </tr>
  <tr>
    <td colspan="2"><select name="reihenfolge[]" id="reihenfolge" size="10" multiple="multiple">
    <option>Auswahl</option>
    </select>

</td>
    <td width="29"><table border="0" cellspacing="0" cellpadding="0"  width="100%">
      <tr>
        <td width="100%"  align="center"><input type="button" value="&uarr;" onClick="moveOptionsUp();"></td>
      </tr>
      <tr>
        <td align="center"><input type="button" value="&darr;" onClick="moveOptionsDown();"></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td colspan="3" align="center"><input type="submit" value="&Auml;ndern" /></td>
  </tr>
</table>
<input type='hidden' name='Auswahl' value='Navi' />
<input type="hidden" name="choose" value="suborder">
</form>

JS&PHP-Code:


PHP-Code:
function selectAgreihenfolge()
{
    removeAllOptions(document.reih.reihenfolge);
    <?php
    
for($a=0;$a<sizeof($ag_ary);$a++)
    {
        
$agid=$a+1;
        
$sort_subgruppen[0][0]="";
        for(
$j=0;$j<sizeof($subgruppen_ary);$j++)
        
//Sortiert die Subgruppen für die Anzeige in die eingestellte Reihenfolge
        
{
            if(
$subgruppen_ary[$j][1]==$agid)
            {
                
                
$t=$subgruppen_ary[$j][3];
                
$t--;
                
$sort_subgruppen[$t][0]=$subgruppen_ary[$j][0];
                
$sort_subgruppen[$t][1]=$subgruppen_ary[$j][1];
                
$sort_subgruppen[$t][2]=$subgruppen_ary[$j][2];
            }
        }
        
        echo 
"\tif(document.reih.agname.value == '".$ag_ary[$a][0]."')\n\t{\n";
        for(
$j=0;$j<sizeof($sort_subgruppen);$j++)
        {
            if(
$sort_subgruppen[$j][1]==$agid)
            {
                echo 
"\t\taddOption(document.reih.reihenfolge,'".$sort_subgruppen[$j][0]."', '".$sort_subgruppen[$j][0]."');\n";
            }
        }
        echo 
"\t}\n";
        
    }
    
?>
}

function moveOptionsUp()
{
    var selectOptions = document.reih.reihenfolge.getElementsByTagName('option');
    for (var i = 1; i < selectOptions.length; i++)
    {
        var opt = selectOptions[i];
        if (opt.selected)
        {
            document.reih.reihenfolge.removeChild(opt);
            document.reih.reihenfolge.insertBefore(opt, selectOptions[i - 1]);
        }
    }
}

function moveOptionsDown()
{
    var selectOptions = document.reih.reihenfolge.getElementsByTagName('option');
    for (var i = selectOptions.length - 2; i >= 0; i--)
    {
        var opt = selectOptions[i];
        if (opt.selected)
        {
            var nextOpt = selectOptions[i + 1];
            opt = document.reih.reihenfolge.removeChild(opt);
            nextOpt = document.reih.reihenfolge.replaceChild(opt, nextOpt);
            document.reih.reihenfolge.insertBefore(nextOpt, opt);
        }
    }
}
////////////////// 
function SelectAg(selectbox, selectbox2)
{    
    removeAllOptions(selectbox);
    addOption(selectbox,"Alle","Alle");
    <?php
         
for($i=0;$i<sizeof($ag_ary);$i++)
        {
            echo 
"if(selectbox2.value == '".$ag_ary[$i][0]."')\n\t{\n";
            
$ti=$i+1;
            for(
$j=0;$j<sizeof($subgruppen_ary);$j++)
            {
                if(
$subgruppen_ary[$j][1]==$ti)
                {
                    echo 
"\t\t addOption(selectbox,'".$subgruppen_ary[$j][0]."', '".$subgruppen_ary[$j][0]."');\n";
                }
            }
            echo 
"\t}\n";
        }
    
?>
    
}

function SelectAgd()
{
    SelectAg(document.drop_list.grp,document.drop_list.agname);
}

function removeAllOptions(selectbox)
{
    var i;
    for(i=selectbox.options.length-1;i>=0;i--)
    {
        selectbox.remove(i);
    }
}


function addOption(selectbox, value, text )
{
    var optn = document.createElement("OPTION");
    optn.text = text;
    optn.value = value;

    selectbox.options.add(optn);
}
</script>
und der PHP-Code zur Auswertung:
PHP-Code:
//---------Editieren der Reihenfolge
            
case "suborder":
                
//Zur DB verbinden
                
$verbindung=mysql_connect($host,$user,$pw) or die ($error_msg.="Konnte nicht zum Server verbinden.");
                
mysql_select_db($db) or die($error_msg.="Datenbank konnte nicht geladen werden.");
                
$selectedagid=agnametonum($_POST["agname"]);
                for(
$i=0;$i<sizeof($subgruppen_ary);$i++)
                
//Numeriert die Subgruppen der Ag entsprechend der User Anordnung.
                
{
                    if(
$subgruppen_ary[$i][1]==$selectedagid)
                    {
                        for(
$j=0;$j<count($_POST['reihenfolge']);$j++)
                        {
                            echo 
$_POST['reihenfolge'][$j];
                            if(
strcmp($subgruppen_ary[$i][0],$_POST['reihenfolge'][$j])==0)
                            {
                                echo 
"treffer";
                                
$tj=$subgruppen_ary[$j][3];
                                
$ti=$subgruppen_ary[$i][3];
                                
$t1=$i+1;
                                
$t2=$j+1;
                                
$neunum "UPDATE Subgruppe SET Nummer ='".$tj."' WHERE Id ='".$t1."'";
                                
$update mysql_query($neunum) or die($error_msg.="Konnte von Subgruppen nummer nicht neu umaendern.");
                                
$neunum "UPDATE Subgruppe SET Nummer ='".$ti."' WHERE Id ='".$t2."'";
                                
$update mysql_query($neunum) or die($error_msg.="Konnte von Subgruppen nummer nicht neu umaendern.");
                                
$j=count($_POST['reihenfolge']);
                            }
                        }
                    }
                }
                
                
dokumentieren("Subgruppen der AG: ".$_POST["agname"]." wurde erfolgreich umsortiert.","Verwaltung.php?Auswahl=Navi");
                
mysql_close($verbindung);
            break; 
dokumentieren ist hierbei eine Funktion die in ein Log schreibt und zu der Angegebenen Seite weiterleitet.

Dabei ist subgruppen in der Form:
Id Name AGId Aktive Nummer

und ag_ary:
Id Name Ordner Benutzer Id Aktive Nummer

Das Problem ist nun folgendes:

Es werden nur bestimmte bereiche umbenannt und jedesmal,ist hier die ausgabe das zulest ausgewählte element z.b. testtesttesttest, wenn test als letzes angeklickt wurde. Wie kann ich dies ändern, wenn ich die Reihenfolge des slect feldes haben möchte?

Btw. Ich weis, dass
PHP-Code:
$update mysql_query($neunum) or die($error_msg.="Konnte von Subgruppen nummer nicht neu umaendern."); 
nicht funktioniert.

MFG
betlor5
Mit Zitat antworten
  #2  
Alt 12.01.2010, 09:33:55
Xor Xor ist offline
Anfänger
 
Registriert seit: Aug 2008
Alter: 35
Beiträge: 124
AW: Multiple Select auswerten liefert Probleme

Hi,

A6, A7, sonst ist das ganze sehr demotivierend...

Zitat:
Es werden nur bestimmte bereiche umbenannt
Welche?
__________________
Allergisch auf:
  • "Ich brauch ein Script für..."
  • "...dringend..."
  • Anfrage-->Antwort-->Nie wieder melden
Mit Zitat antworten
  #3  
Alt 12.01.2010, 10:47:37
cortex cortex ist offline
SELFPHP Profi
 
Registriert seit: Apr 2008
Alter: 48
Beiträge: 1.938
AW: Multiple Select auswerten liefert Probleme

Zitat:
Zitat von betlor5 Beitrag anzeigen
ich weis, dass dies schön des öfteren diskutiert wurde, jedoch finde ich einfach nicht den Fehler in meinem Code [...]
ja, das klingt nach einem problem für Fortgeschrittene und Experten...

[mod: verschoben]

cx
Mit Zitat antworten
Antwort

Stichworte
array auswerten, multiple select, probleme


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ausgabe wird nicht angezeigt Extremefall PHP Grundlagen 9 17.12.2009 08:49:45
Probleme mit PHP und mySQL, Select xy as yz funktioniert nicht KickMuck MySQLi/PDO/(MySQL) 1 04.03.2006 12:24:31
in select multiple Auswahl löschen aviral HTML, CSS und JavaScript Help! 1 29.02.2004 00:01:09
Select multiple in PHP auswerten aviral PHP für Fortgeschrittene und Experten 2 26.02.2004 11:12:57
select multiple xKleo PHP für Fortgeschrittene und Experten 0 02.07.2003 19:19:44


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:49:03 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt