ilch Forum » Allgemein » HTML, PHP, SQL,... » an einem Modul

Geschlossen
  1. #1
    User Pic
    freak Mitglied
    Registriert seit
    31.01.2007
    Beiträge
    856
    Beitragswertungen
    0 Beitragspunkte
    Hallo,
    Ich bin an einem Modul dran und ich komme an der schleife nicht weiter

    hier mal meine codes

    template

    <form action="index.php?kassenper" method="POST" name="kassenper">
    <div class="blue-titel" style="width:100%">Warenkorb | Hier bitte nichtsmehr ändern, Wird was geändert könnte es probleme bei der Bestellung geben!!<br />
      <br />
      <br />
    </div>
    <div class="left">
    <table width="100%" border="0" cellspacing="0" class="border" cellpadding="0">
    
    
    <tr>
      <td width="7%"><div class="blue-titel" style="width:100%;">Stk.</div></td>
      <td width="9%"><div class="blue-titel" style="width:100%;">&nbsp;
      </div></td>
      <td width="20%"><div class="blue-titel" style="width:100%;">Artikel</div></td>
      <td width="17%"><div class="blue-titel" style="width:100%;">Artikelnummer</div></td>
      <td width="14%"><div class="blue-titel" style="width:100%;">Preis mit MwSt </div></td>
      <td width="10%"><div class="blue-titel" style="width:100%;">Versand</div></td>
      <td width="14%"><div class="blue-titel" style="width:100%;">Ansicht</div></td>
      </tr>
    {EXPLODE}
    <tr>
      <td  class="verlauf"><div align="center"  class="verlauf"><input name="zahl[]" value="{zahl}" size="2" alt="zahl" border="0" />
      </div></td>
      <td  class="verlauf"><img src="{ssurl}" border="0" height="60" width="60" /></td>
      <td  class="verlauf"><input name="name[]" value="{name}" size="17" alt="name" border="0"  /></td>
      <td  class="verlauf"><div align="left"><input name="version[]" value="{version}" size="5" alt="version" border="0" />
      </div></td>
      <td  class="verlauf"><input name="erg[]" value="{erg}" size="3" alt="erg" border="0" />
        &euro;</td>
      <td  class="verlauf"><input name="versand[]" value="{versand}" size="4" alt="versand" border="0" /></td>
      <td  class="verlauf"><a href="index.php?waren-show-{id}" target="_blank">Artikel ansehen</a></td>
      </tr>
    {EXPLODE}
    </table>
    <br />
    </div>
    <br />
    <br />
    <div class="left" style="padding-left:600px; margin-top:25px;">
    <input type="submit" value="Bestellen" name="sub"  class="button-norm"/></div>
    </form>



    meine php
    <?php
    defined('main') or die('no direct access');
    $title = $allgAr['title'].' :: Warenkorp';
    $hmenu = 'Warenkorp';
    $design = new design ( $title , $hmenu );
    $design->header();
    
    
    if (loggedin()) {
    
      //Eintragen
      if (isset($_POST['sub'])) {
        $anz = count($_POST['name']);
    	for ($i = 0; $i < $anz; $i++) {
        $version = escape($_POST['version'][$i],'integer');
    	$zahl = escape($_POST['zahl'][$i],'integer');
    	$name = escape($_POST['name'][$i],'string');	
    	$erg = escape($_POST['erg'][$i],'integer');	
    	$versand = escape($_POST['versand'][$i],'string');
        if (db_query("INSERT INTO `prefix_bestellung` (uid,name,zahl,version,erg,versand) VALUES ('".$_SESSION['authid']."','".$name."','".$zahl."','".$version."','".$erg."','".$versand."')"));
    	}}
    
    
      //Ausgabe
      $tpl = new tpl('kassenper');
      $tpl->out(0);
      
      $dif = date('Y-m-d H:i:s', time() - 60);
      
      $sql = db_query("SELECT a.fid as aktfid, b.version, name, creater, id, zahl, versand, ssurl, mwst
                     FROM `prefix_warenkorp` a
                     LEFT JOIN `prefix_waren` b ON a.fid = b.id");
      while ($r = db_fetch_assoc($sql)) {
        $class = ($class=='Cmite'?'Cnorm':'Cmite');
        $r['class'] = $class;
    	$r['erg'] = $r['creater'] * $r['zahl'] / 100 * $r['mwst'] + $r['creater'];
    	$tpl->set('erg', $r['erg']); 
        $tpl->set_ar_out($r,1);
      }
      
      $tpl->out(2);
    } else {
      echo 'Nur für angemeldete Kunden.<br />';
    }
    
    
    $design->footer();
    ?>


    hoffe es kann mir jemand helfen


    Mfg freak


    verwendete ilchClan Version: 1.1
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    -GoA][-Sniper Mitglied
    Registriert seit
    31.10.2007
    Beiträge
    1.468
    Beitragswertungen
    63 Beitragspunkte
    Hey Freak


    was fürn Modul soll das den werden ???
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Versteh dich nicht, was macht er den nicht in der Schleife? und welche schleife?

    Ich schätze an der for schleife! Teste es doch mal mit einer foreach.

    Beispiel: (kann nicht sagen ob es geht glaube aber schon).
    foreach ($_POST['name'] AS $k => $v){
    echo $_POST['name'][$k];
    echo $_POST['zahl][$k];
    }



    Zuletzt modifiziert von Balthazar3k am 10.02.2008 - 00:11:32
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    freak Mitglied
    Registriert seit
    31.01.2007
    Beiträge
    856
    Beitragswertungen
    0 Beitragspunkte
    das ist jetzt mein aktueller code

    <?php
    defined('main') or die('no direct access');
    $title = $allgAr['title'].' :: Warenkorp';
    $hmenu = 'Warenkorp';
    $design = new design ( $title , $hmenu );
    $design->header();
    
    
    if (loggedin()) {
    
      //Eintragen
        if (isset($_POST['sub'])) {
        $anz  = @db_result(db_query("SELECT count(zahl) FROM prefix_warenkorp"),0);
        $version = escape($_POST['version'],'integer');
        $zahl = escape($_POST['zahl'],'integer');
        $name = escape($_POST['name'],'string');    
        $erg = escape($_POST['erg'],'integer');    
        $versand = escape($_POST['versand'],'string');
        for ($i = 0; $i < $anz; $i++) {
        db_query("INSERT INTO `prefix_bestellung` (uid,name,zahl,version,erg,versand) VALUES ('".$_SESSION['authid']."','".$name."','".$zahl."','".$version."','".$erg."','".$versand."')");
        }}
    
    
      //Ausgabe
      $tpl = new tpl('kassenper');
      $tpl->out(0);
      
      $dif = date('Y-m-d H:i:s', time() - 60);
      
      $sql = db_query("SELECT a.fid as aktfid, b.version, name, creater, id, zahl, versand, ssurl, mwst
                     FROM `prefix_warenkorp` a
                     LEFT JOIN `prefix_waren` b ON a.fid = b.id");
      while ($r = db_fetch_assoc($sql)) {
        $class = ($class=='Cmite'?'Cnorm':'Cmite');
        $r['class'] = $class;
    	$r['erg'] = $r['creater'] * $r['zahl'] / 100 * $r['mwst'] + $r['creater'];
    	$tpl->set('erg', $r['erg']); 
        $tpl->set_ar_out($r,1);
      }
      
      $tpl->out(2);
    } else {
      echo 'Nur für angemeldete Kunden.<br />';
    }
    
    
    $design->footer();
    ?>


    ich hab das prob da er immer nur den letzten artikel vom warenkorb in die db schreibt, ich glaub es liegt am anz oder??

    MfG freak


    [EDIT]

    Soo jetzt zähle ich die eingetragenen artikel aus einer anderen db raus!


    Zuletzt modifiziert von freak am 10.02.2008 - 00:28:13
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    das kann ja auch nicht gehen, weil der wert von Post nur einmal dem array ($version o. $name) übergeben wird!
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    freak Mitglied
    Registriert seit
    31.01.2007
    Beiträge
    856
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von Balthazar3k

    das kann ja auch nicht gehen, weil der wert von Post nur einmal dem array ($version o. $name) übergeben wird!


    sprich deutsch mit mir :-P
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Wie dumm das ich kein Deutscher bin ^^
    Probier es mal so.

    <?php 
    if (isset($_POST['sub'])) { 
    	foreach( $_POST['name'] as $k => $v ){
        	$version = escape($_POST['version'][$k],'integer'); 
        	$zahl = escape($_POST['zahl'][$k],'integer'); 
        	$name = escape($_POST['name'][$k],'string');     
        	$erg = escape($_POST['erg'][$k],'integer');     
        	$versand = escape($_POST['versand'][$k],'string'); 
        	db_query("INSERT INTO `prefix_bestellung` (uid,name,zahl,version,erg,versand)
    		VALUES ('".$_SESSION['authid']."','".$name."','".$zahl."','".$version."','".$erg."','".$versand."')"); 
        }
    } 
    
    ?>
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    freak Mitglied
    Registriert seit
    31.01.2007
    Beiträge
    856
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von Balthazar3k

    Wie dumm das ich kein Deutscher bin ^^
    Probier es mal so.

    <?php 
    if (isset($_POST['sub'])) { 
    	foreach( $_POST['name'] as $k => $v ){
        	$version = escape($_POST['version'][$k],'integer'); 
        	$zahl = escape($_POST['zahl'][$k],'integer'); 
        	$name = escape($_POST['name'][$k],'string');     
        	$erg = escape($_POST['erg'][$k],'integer');     
        	$versand = escape($_POST['versand'][$k],'string'); 
        	db_query("INSERT INTO `prefix_bestellung` (uid,name,zahl,version,erg,versand)
    		VALUES ('".$_SESSION['authid']."','".$name."','".$zahl."','".$version."','".$erg."','".$versand."')"); 
        }
    } 
    
    ?>




    deine Version gibt nen fehler


    Warning: Invalid argument supplied for foreach() in /var/www/web38/html/neues_Script/shop_cms/include/contents/kassenper.php on line 13
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    freak Mitglied
    Registriert seit
    31.01.2007
    Beiträge
    856
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von -GoA
    [-Sniper]
    Hey Freak


    was fürn Modul soll das den werden ???


    auf diese Frage gehe ich jetzt nicht ein
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Ok vieleicht hätte ich erst mal deine Template anscheun sollen, wenn das ein Warenkorb ist warum sind dan Input felder drinne? Soll der Käufer etwa selber den Preis Bestimmen?


    Zuletzt modifiziert von Balthazar3k am 10.02.2008 - 00:45:33
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    freak Mitglied
    Registriert seit
    31.01.2007
    Beiträge
    856
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von Balthazar3k

    Ok vieleicht hätte ich erst mal deine Template anscheun sollen, wenn das ein Warenkorb ist warum sind dan Input felder drinne? Soll der Käufer etwa selber den Preis Bestimmen?


    ich bin doch noch net fertig
    oder??
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Wenn es fertig wer werst wohl glaub ich ja nicht hier oder? Ich kenn andere wege um dein Ziel zu erreichen, nun wollt ich wissen ob es nötig ist über all input felder zu nutzen oder nicht?

    Der Fehler von meiner Version heist soviel wie, das es kein array gibt.

    also ist meine Syntax wohl falsch ich habe das auch noch nie mit einer Post variante ausprobiert.

    Sry aber ich kann dir nicht Helfen nicht so wie du es gerne Möchtest.

    Gn8
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    freak Mitglied
    Registriert seit
    31.01.2007
    Beiträge
    856
    Beitragswertungen
    0 Beitragspunkte
    gibt es eine möglichkeit die input felder weg zu lassen?
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    freak Mitglied
    Registriert seit
    31.01.2007
    Beiträge
    856
    Beitragswertungen
    0 Beitragspunkte
    ich habs trotzdem danke an alle :-)
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Poste doch bitte deine Lösung dazu lernen kann man immer ^^
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Ithron Hall Of Fame
    Registriert seit
    21.01.2006
    Beiträge
    2.659
    Beitragswertungen
    24 Beitragspunkte
    Im übrigen kann man input felder auch benutzen, allerdings würd ich dann noch disabled="disabled" bzw. readonly="readonly" benutzen.
    ZitatZitat geschrieben von loW

    Ja ich habs gesehen und wenn ichs kostenlos bekomm dann zahl ich doch nix dafür oder?
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten