php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 31.08.2004, 22:01  
Gast
 
Beiträge: n/a
Standard Update-Befehl tut nur manchmal was?!?!?

Ich habe ein bescheuertes Problem, bei dem folgendem Skript (ja, ich weiß Verbesserungen gibt es immer...):
Mit dem Update-Befehl, nachdem der der ok-button geklickt wurde.
In der ersten if-Abfrage setzt der update befehl in_arbeit nicht auf Null????!!!! WARUM? "geloescht" setzt er nämlich auf '1'...

Bei der if-abfrage mit "storniert" macht er alles richtig.
Eine Fehlermeldung spuckt er nicht aus.
Ich habe keine Idee mehr...

Danke, KHR (ich hoffe, es ist nicht zu unübersichtlich...)

Code:
<?php
session_start();


if (isset($zurueck))  // zurück zur auftragsübersicht
{
   unset($_SESSION);
   header("Location:http://www.blalbla.de/tool.php");  
}


if (isset($ok))       // Kästchen wurden angehakt oder auch nicht :)
{
   	    
		 require("connect.inc.php");  // DB-Kontakt herstellen!
		

         for($x=0;$x<sizeof($_SESSION['auftrag']);$x++)
		 {
			// PROBLEEEEEEM
			if ($wech[$x]=='1')
			{
			   $query="UPDATE bestellsatz SET in_arbeit='0',geloescht='1' WHERE bestell_id='".$_SESSION['auftrag'][$x][0]."'"; 
               $result = mysql_query($query)or die(mysql_error());								   
			}
			else
			{
		       $query="UPDATE bestellsatz SET in_arbeit='1',geloescht='0' WHERE bestell_id='".$_SESSION['auftrag'][$x][0]."'"; 
               $result = mysql_query($query)or die(mysql_error());					
			}
    		// PROBLEEEEEEM
			if ($storno[$x]=='1')
			{
		       $query="UPDATE bestellsatz SET in_arbeit='0',storniert='1' WHERE bestell_id='".$_SESSION['auftrag'][$x][0]."'"; 
               $result = mysql_query($query)or die(mysql_error());								   
			}
			else
			{
		       $query="UPDATE bestellsatz SET in_arbeit='1',storniert='0' WHERE bestell_id='".$_SESSION['auftrag'][$x][0]."'"; 
               $result = mysql_query($query)or die(mysql_error());					
			}
			
und so weiter...
Hier noch der Hauptteil:



require("connect.inc.php");
include("kopf.php");
include("seifertmenue.php");     

		 if (isset($a_nr))
		 {
			$_SESSION['a_nr']=$a_nr;
			unset($a_nr);
		 }
		 
		 if (!isset($_SESSION['auftrag'])) 
		 {
		    $_SESSION['auftrag']=array();
		 }  
		 else 
		 {
		    unset($_SESSION['auftrag']);  
			$_SESSION['auftrag']=array();  
		 }
		    
			// Daten aus übergebenem Auftrag ranholen
		    $query="SELECT bestell_id,bestell_datum,benutzer_id,liefer_id,artikel_text,artikel_anzahl,artikel_wert,in_arbeit,vorgemerkt,storniert,freitext,abo,apart,geloescht,libri,kv,umbreit,direkt FROM bestellsatz WHERE auftrag='".$_SESSION['a_nr']."'";
	  	    $result = mysql_query($query)or die(mysql_error());
	        while ($row = mysql_fetch_row($result))
		    {
		       array_push($_SESSION['auftrag'], $row);  
		    }
		    unset($row);
		 
		 
	//	 print_r($_SESSION['auftrag']);
		 
		 echo'

';
		 echo '<table align="center" width="705" bgcolor="#000000" border="0" cellpadding="3" cellspacing="1" >';
	     echo '<tr><td align="center" colspan="5" bgcolor="BFE2F8"><font size="4">Detail-Ansicht Auftrag</font></td></tr>';
		 echo '</table>';  
		 echo '

';
	 	 echo '<table align="center" width="705" bgcolor="#000000" border="0" cellpadding="3" cellspacing="1" >';
	     echo '<tr><td align="center" colspan="14" bgcolor="BFE2F8"><font size="3">Auftrag Nummer ';
		 echo $_SESSION['a_nr'],' vom ',date("d.m.Y",$_SESSION['auftrag'][0][1]),'</font></td></tr>';
         echo '<tr><td bgcolor="bfe2f8">Titel</td><td bgcolor="bfe2f8">Menge</td><td bgcolor="bfe2f8">EPreis</td>';
		 echo '<td bgcolor="bfe2f8">gelöscht</td>';
		 echo '<td bgcolor="bfe2f8">storno</td>';
		 echo '<td bgcolor="bfe2f8">vorgem.</td>';
		 echo '<td bgcolor="bfe2f8">Libri</td>';
		 echo '<td bgcolor="bfe2f8">KV</td>';
		 echo '<td bgcolor="bfe2f8">Umbreit';
		 echo '<td bgcolor="bfe2f8">Direkt';
		 echo '<td bgcolor="bfe2f8">LS erstellen</td>';
         
		 echo '<form method="post" action=',$PHP_SELF,'>';
         
		 $i=0;
         foreach ($_SESSION['auftrag'] as $value)
		    {
               echo '<tr><td bgcolor="0093d7">',$value[4],'</td>';
		  	   echo '<td bgcolor="0093d7">',$value[5],'</td>';
   		  	   echo '<td bgcolor="0093d7">',$value[6],'</td>';
		       if ($value[13]==1)
			   {
                  echo '<td align="center" bgcolor="0093d7"><input type="checkbox" checked name="wech[',$i,']" value="1" border="0"></td>';			      
			   }
			   else
			   {
			      echo '<td align="center" bgcolor="0093d7"><input type="checkbox" name="wech[',$i,']" value="1" border="0"></td>';
      		   }
		       if ($value[9]==1)
			   {
			      echo '<td align="center" bgcolor="0093d7"><input type="checkbox" checked name="storno[',$i,']" value="1" border="0"></td>';
			   }
			   else
			   {
			      echo '<td align="center" bgcolor="0093d7"><input type="checkbox" name="storno[',$i,']" value="1" border="0"></td>';
      		   }
		       if ($value[8]==1)
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" checked name="vorgemerkt[',$i,']" value="1" border="0"></td>';
			   }
			   else
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" name="vorgemerkt[',$i,']" value="1" border="0"></td>';
      		   }
		       if ($value[14]==1)
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" checked name="libri[',$i,']" value="1" border="0"></td>';
			   }
			   else
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" name="libri[',$i,']" value="1" border="0"></td>';
      		   }
		       if ($value[15]==1)
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" checked name="kv[',$i,']" value="1" border="0"></td>';
			   }
			   else
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" name="kv[',$i,']" value="1" border="0"></td>';
      		   }
		       if ($value[16]==1)
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" checked name="umbreit[',$i,']" value="1" border="0"></td>';
			   }
			   else
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" name="umbreit[',$i,']" value="1" border="0"></td>';
      		   }
		       if ($value[17]==1)
			   {
		       echo '<td align="center" bgcolor="0093d7"><input type="checkbox" checked name="direkt[',$i,']" value="1" border="0"></td>';
			   }
			   else
			   {
		       echo '<td align="center" bgcolor="0093d7"><input type="checkbox" name="direkt[',$i,']" value="1" border="0"></td>';
      		   }			   
		       if ($value[3]!=0)
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" checked name="ls[',$i,']" value="1" border="0"></td>';
			   }
			   else
			   {
		          echo '<td align="center" bgcolor="0093d7"><input type="checkbox" name="ls[',$i,']" value="1" border="0"></td>';
      		   }

			   $i++;
			}
		 
		 echo '<tr><td colspan="5" valign="middle" bgcolor="0093d7" align="center" width="352"><input type="submit" name="zurueck" value="zurück zur Auftrags-Übersicht" border="0"></td>';
		 echo '<td colspan="6" align="center" valign="middle" width="352" bgcolor="0093d7"><input type="submit" name="ok" align="center" value="Übernehmen" border="0"></td></tr>';			 
		 echo '</form></table>';
		 echo'



';
		 
		?>
[/code]
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 01.09.2004, 09:40  
Gast
 
Beiträge: n/a
Standard

sorry, aber ich versteh die logik grad net ..

hast du schon die "einfachen" debugging sachen erledigt? einfach nen echo '..';
ausgeben, wenn die bedingung erfüllt is .. und ausserhalb jeglicher abfragen
alles ausgeben was für die bedingungen wichtig is, und erst mal nen "optischen"
check durchführen ob die variablen etc alles gesetzt is.

du hast keinerlei kontrolle ob deine scripte ausgeführt werden. du kriegst nur
ne rückmeldung wenn du nen sql syntax fehler drin hast. mehr is nich.

also nimm dir das doch erst mal zu herzen.
  Mit Zitat antworten
Alt 01.09.2004, 09:46  
Gast
 
Beiträge: n/a
Standard

Vergessen zu sagen.

Alles schon gemacht. Die Variablen werden komplett richtig gesetzt.

Aber Danke für deine Antwort.
KHR
  Mit Zitat antworten
Antwort


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
SQL Befehl Update geht fehlerlos.. nicht! Toby Datenbanken 3 05.02.2008 20:34
Update -> AffectedRows -> Insert R4v3r Datenbanken 6 12.06.2007 11:13
UPDATE Befehl, Veränderung festellen tekknotrip Datenbanken 2 21.03.2006 15:19
Befehl UPDATE bei SQL-Abfrage PHP Tipps 2006 3 14.03.2006 22:08
UPDATE count nach Link Aufruf ? PHP Tipps 2006 9 22.01.2006 14:53
Warning: filesize(): SAFE MODE Restriction in effect. nicobischof PHP Tipps 2005-2 9 17.08.2005 19:05
Update Befehl Problem! Datenbanken 9 16.08.2005 18:01
[Erledigt] SQL Befehl fehlerhaft? Datenbanken 3 25.07.2005 01:29
Befehl erst nach Bestimmter Zeit ausführen? PHP Tipps 2005 21 28.02.2005 00:13
[Erledigt] Mysql Update mit PHP Befehl Datenbanken 13 26.01.2005 15:52
MySQL UPDATE Befehl funktioniert nicht PHP Tipps 2005 6 24.01.2005 15:03
Update per Cronjob (where Feld = Wort) Apfeltyp PHP Tipps 2004-2 3 14.12.2004 18:25
Insert und Update Befehl funktioniert nicht Anuschka Datenbanken 2 03.09.2004 00:38
Update Befehl??? Datenbanken 2 27.08.2004 11:07
Update Befehl klappt nicht PHP Tipps 2004 12 13.06.2004 21:06

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
$_session update, query aktualisiert nur manchmal, if ($_session php befehl, in update befehl if abfrage, echo \'<td><input type=\checkbox\ checked, http://www.php.de/datenbanken/8093-erledigt-update-befehl-tut-nur-manchmal.html, storno befehl php, echo \'<td> <input type=\checkbox\

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