Beiträge von ingrid_mari

    Ich habe Probleme mit dem Update bei einer Checkbox

    Datenbankfeld eu, input type ist checkbox
    INPUT FELD in FORMULAR:
    <input type="checkbox" name="eueingabe[<?php echo $ID_e ; ?>]" value="1" <?php echo ($eu) == "1" ? "checked" : ""?>>

    HIER SOLLTE UPDATE STATTFINDEN:
    if(isset($_POST['eueingabe']))
    {
    foreach($_POST['eueingabe'] as $key => $val)
    {
    $ID_e=$key;
    $eueingabe=$val;
    $eueingabe = isset($_POST['eueingabe'])? 1 : 0;
    $query ="UPDATE tab SET eu='$eueingabe' WHERE ID_e='$key'";
    $sql = mysql_query( $query ) or die(mysql_error());
    }
    }
    DAS TUT ES NICHT, bei inserts alles wunderbar, bei while Schleifen auch
    Danke für Hilfe!

    Lösung einfach dargestellt:
    select j, sum (a) as sa, sum(b) as sb
    from
    (select j, xa as sa, 0 as sb
    from tab1
    union
    (select j, ya as sa, yb as sb
    from tab2)
    as tab3
    group by j

    Lösung:
    $query=mysql_query("
    select j, sum(suma) as suma, sum(sumv) as sumv, sum(sumu) as sumu
    from
    (select YEAR(dat) as j, betrag_brutto as suma, ust_betrag as sumv, 0 as sumu
    from a
    union
    select YEAR(dat) as j, 0 as suma, 0 as sumv, ust_betrag as sumu
    from b
    union
    select YEAR(dat) as j,0 as suma, 0 as sumv, sumust as sumu,
    from c
    ) as d
    group by j
    ") or die(mysql_error());

    ich glaube die Lösung gefunden zu haben: getestet hab ich noch nicht, ich stelle - wenn ich es zs bringe - danach die richtige Version rein
    $query=mysql_query("
    select j, sum(suma), sum(sumv), sum(sumu)
    from
    (select YEAR(dat) as j, SUM(betrag_brutto) as suma, SUM(ust_betrag) as sumv, 0 as sumu
    from a group by YEAR(dat)
    union
    select YEAR(dat) as j, 0 as suma, 0 as sumv, SUM(ust_betrag) as sumu
    from b group by YEAR(dat)
    union
    select YEAR(dat) as j,0 as suma, 0 as sumv, SUM(sumust) as sumu,
    from c group by YEAR(dat)
    ) as d
    group by j
    ") or die(mysql_error());

    Ich habe ein Problem mit union (über 3 Tabellen), die Ausgabe sollte Spaltensummen ergeben, also 1 Zeile mit den Summen einiger Spalten. Die Ausgabe besteht aber aus 3 Zeilen den Summen der 3 Tabellen:

    $query=mysql_query("select
    YEAR(dat) as j, SUM(betrag_brutto) as suma, SUM(ust_betrag) as sumv, 0 as sumu
    from a
    union
    select YEAR(dat) as j, 0 as suma, 0 as sumv, SUM(ust_betrag) as sumu
    from b
    union
    select YEAR(dat) as j,0 as suma, 0 as sumv, SUM(sumust) as sumu,
    from c
    group by YEAR(dat)") or die(mysql_error());

    while($DS = mysql_fetch_array( $query ))
    { ...


    Ergebnis:
    suma: 2.529,88, sumv: 0,00, sumu: 356,09
    suma: 0,00, sumv: 15,00, sumu: 0,00
    suma: 0,00, sumv: 30,22, sumu: 0,00

    angestrebtes Ergebnis:
    suma: 2.529,88, sumv: 45,22, sumu: 356,09

    Ich schaffe folgendes nicht:
    wenn keine Branche ausgewählt ist (if($DS[ID_branche]<>$NR_branche), soll nicht der erste Eintrag der Dropdownliste aufscheinen und gewählt werden beim update, sondern "bitte auswählen" mit value=' ' aufscheinen, darunter sollen die Werte aufscheinen.
    also so: echo"<option value='' $selected>bitte auswählen</option>";

    Das folgende funktioniert gut, aber ohne "bitte auswählen"

    $query = mysql_query("SELECT ID_branche, branche FROM $branche_kunde order by branche") OR die("Fehler Abfrage Branche");
    echo "<select name='brancheeingabe'>";
    while ($DS = mysql_fetch_array($query))
    {
    if($DS[ID_branche]==$NR_branche)
    $selected=" selected='selected'";
    else $selected="";
    echo"<option size=10 value=$DS[ID_branche] $selected><font size=1>$DS[branche]</font></option>";
    }
    ?>
    </select>

    danke für Hilfe

    aber was wird da ausgegeben? Die dbconnect.php hat folgenden Inhalt, auch wenn ich die letzten 2 queries weglasse, bleibts dabei
    <?php
    mysql_connect("mysql.XXXXXX","XXX","XXX") or die ("Die Datenbank ist nicht erreichbar");
    mysql_select_db("XXXX");
    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER SET 'utf8'");
    ?>

    Danke, ich habe den code hineinkopiert und so snd alle formatierungen verschwunden.(peinlich) wie geht das mit dem code? (nochmals peinliche frage)
    Also anbei dei Fehlermeldung, ich glaub noch immer an ein Leerzeichen, nur finden tu ich keine.Ohne regenerate bleibt die Fehlermeldung in line19:

    Warning: session_regenerate_id() [function.session-regenerate-id]: Cannot regenerate session id - headers already sent in /home/jf000005/www/home/magento/check.php on line 13

    Warning: Cannot modify header information - headers already sent by (output started at /home/jf000005/www/home/magento/dbconnect.php:1) in /home/jf000005/www/home/magento/check.php on line 19

    Hallo, hat jemand eine Idee wieso das redirect nicht geht, die Sessionvariablen aber übergeben werden?
    Leerzeichen oder leere Zeilen finden sich im Script nicht mehr, auch in der include-Datei nicht. Es ist auch egal ob ich die ganze URL bei Location eintrage oder nicht....

    Es werden hier Logindaten von login.php übernommen, geprüft (MYSQL DB Tabelle user) und es soll danach weitergeleitet werden auf startdummy.php, dort kommen die Sessiondaten auch an, alles sonst funktioniert, aber das redirect geht nicht. - Danke fürs versuchen, lglg

    <?php
    session_start();
    include 'dbconnect.php';
    if (isset($_POST['username']) && isset($_POST['passwort']))
    {
    $username = mysql_real_escape_string($_POST['username']);
    $passwort = mysql_real_escape_string($_POST['passwort']);
    $result = mysql_query("SELECT * FROM user WHERE username='$username'");
    if(mysql_num_rows($result) == 1)
    {
    session_regenerate_id();
    $member=mysql_fetch_assoc($result);
    $_SESSION['SESS_ID_user']=$member['ID_user'];
    $_SESSION['SESS_nachname_user']=$member['nachname_user'];
    $_SESSION['SESS_vorname_user']=$member['vorname_user'];
    session_write_close();
    header("Location:startdummy.php");
    exit();
    }
    else {
    header("Location:login.php");
    exit();
    }
    }
    ?>

    Hallo crAzywuLf :streichel: ,
    Du hast den Fehler bereits in deiner vorletzten Antwort gefunden:
    (ich habs nicht gleich bemerkt weil ich dazwischen noch was falsches eingebaut hatte)

    $selected = ($row['nachname'] == $accountinhaber) ? ' selected="selected"' : '';
    meine ursprüngliche version war
    $selected = ($row['nachname'] == $XX) ? ' selected="selected"' : ''; wobei $XX=$_POST['XX'];

    das war falsch

    DAS WARS, ich danke herzlichst, ingrid :humba:

    ja, das stimmt alles, ich hab auch schon x versionen von dem teil ausprobiert, auch wird der nachname in das Feld in der Tabelle account eingetragen, update funktioniert ja ...

    aber ich glaub das problem liegt daran, dass bei meinem update form die Verbindung über die ID von der tabelle account (wo der nachname eingetragen wird)
    zur tabelle user (die sämtliche nachnamen enthält) fehlt
    und da torkle ich noch herum, dazwischen ist nämlich
    die Zwischentabelle account_user und da sollen ja beim update die IDs eingetragen werden, das bring ich mit mehr zeit zusammen.
    Könnte das sein, dass das der Grund ist weshalb nach dem update der wert in der auswahlliste wieder auf den ersten wert springt?
    (ich bin neu bei php. ich bau nur ein paar musterseiten zusammen).
    Wieder danke für deine hilfe! lg i