• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Heraus aus dem php-Datei

Hallo Albu, ich habe versucht das ganze Programmcode zu schicken. Es waren 35000 Zeichen und damit nicht übertragbar. Ich sollte es auf 15000 Zeichen verkürzen. Es tut mir Leid, das kann ich im Moment nicht machen.
Du solltest Dir im Klaren sein, dass hier niemand 15K oder gar 35K Code für Dich durchsucht.
Wie wäre es mit einem abgespecktem Beispiel - würde Dir vielleicht auch helfen die Übersicht zurück zu gewinnen.
 
Hallo Albu,zuerst danke dir für deine geduldige Verhaltenweise. Hier habe ich versucht Programmcode soweit zu verkürzen.Es können hier und da kleinigkeitsfehler wegen verkürzen passiert sein. Danke
---------------
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<!-- DW6 -->
<head>
<!-- Copyright 2005 Macromedia, Inc. All rights reserved. -->
<title>korrektur</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- <link rel="stylesheet" href="mm_travel2.css" type="text/css" /> -->
<link href="style1.css" type="text/css" rel="stylesheet"></link>
<?php
function suche($db_name,$Zettelno){
global $ticketnr,$datumak,$Zeit,$EigName,$tournamen,$datum,$sprachen,$KCode,$tourpreis,$erw;
global $ERW,$GK,$KK, $Euro, $Dolar, $Tlira, $Bezahltp, $Fjn, $Notiz;
global $Zettelno;

 $db_check = mysql_select_db ( $db_name );   
 $res = mysql_db_query($db_name, "select * from __touren__ WHERE TourZNr = '$Zettelno'");
 $num = mysql_num_rows($res);
  
 while($query_data = mysql_fetch_array($res))
 {
 $ticketnr = $query_data[0];$datumak= $query_data[1];$Zeit = $query_data[2];
 $EigName = $query_data[3];$tournamen = $query_data[4];$datum = $query_data[5];
 $sprachen = $query_data[6];$KCode = $query_data[7];$tourpreis = $query_data[8];
 $erw = $query_data[9];$kind= $query_data[10];$baby = $query_data[11];
 $KVorname = $query_data[12];$KNachname= $query_data[13];$laender = $query_data[14];
 $GK = $query_data[33];$KK= $query_data[34];$Euro = $query_data[35];
 $Dolar = $query_data[36];$Tlira= $query_data[37];$Bezahltp = $query_data[38];
 $Fjn = $query_data[39];$Notiz = $query_data[40];
}
}
$db_server = 'xxx';
$db_name = 'yyyy';
$db_user = 'zzzz';
$db_passwort = 'vvvvvvvvv';         
$db = mysql_connect ( $db_server, $db_user, $db_passwort ) or die ( 'keine Verbindung' ); 

   $db_check = mysql_select_db ( $db_name, $db );   
   
   $res = mysql_db_query($db_name, "select WVerkauf from __waehrung__ WHERE WSymb = 'AVRO'");
   $num = mysql_num_rows($res);
   $mid=mysql_fetch_array($res);
   $mideuro = $mid["WVerkauf"];      
?>
</head>
<body onload="self.focus();document.formularticket.ZettelNr.focus();">
		<div id="Ebene1" class="bodyText">
			<div align="center">
				<form name="formularticket" action="Update.php" method="post" onsubmit="return confirm('Suche/Speichere')" onreset="return confirm('Soll ich alles loeschen?')">
					<div style="position:relative;width:1853px;height:889px;background-color:#954;background-image:url('(EmptyReference!)');margin:auto;-adbe-g:a;">
						<div style="position:absolute;top:26px;left:32px;width:607px;height:169px;">
							<table class="bodyText" width="607" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="#cc0000" background="(EmptyReference!)" height="146">
								<td bgcolor="#a73f15" width="151" height="25"><font color="#fff2f7">DEMO TOURS</font></td>
								<td bgcolor="#a73f15" width="162" height="25">
									<div align="left">
										<font color="#fff2f7"></font></div>
								</td>
								<td bgcolor="#a73f15" width="129" height="25">
									<div align="center">
										<font color="#fff2f7">Kunden No</font></div>
								</td>
								<td bgcolor="#a73f15" width="153" height="25">
									<div align="left">
										<font color="#fff2f7"><input type="text" name="ZettelNr" size="10" onchange="inpticketnr(this)" onblur="PruefeInhalt(this.value)" /><? $Zettelno = $HTTP_POST_VARS['ZettelNr']; ?><input name="ticketnr" value="<? echo $Zettelno; $ticketnr=$Zettelno; ?>" readonly="readonly" size="14" /></font></div>
								</td>
								<?php
$res = mysql_db_query($db_name, "select * from __touren__");
$Anz = mysql_num_rows($res);
if ($Zettelno > $Anz) print("existiert nicht");
else suche($db_name,$Zettelno); ?></tr>
								<tr bgcolor="#ffbc06" height="60">
									<td bgcolor="#a73f15" width="151" height="60">
										<div align="right">
											<font color="#fff2f7">Erwachs:</font></div>
									</td>
									<td bgcolor="#a73f15" width="162" height="60">
										<div align="left">
											<font color="#fff2f7"><input type="text" name="xx1" value="<? echo $ERW; ?>" readonly="readonly" size="11" /></font></div>
									</td>
									<td bgcolor="#a73f15" width="129" height="60">
										<div align="right">
											<font color="#fff2f7">Name</font></div>
									</td>
									<td bgcolor="#a73f15" width="153" height="60">
										<div align="left">
											<font color="#fff2f7"><input name="KVorname" value="<? echo $KVorname; ?>" size="14" tabindex="10" /></font></div>
									</td>
									<? $KVorname = $HTTP_POST_VARS['KVorname']; ?></tr>
									<div align="left">
											<a href="Hauptmenue.html"><font size="30" color="blue">Hauptmenue</font></a></div>
								</td>
								<td bgcolor="#a73f15" width="134" height="25">
									<div align="right">
										<input type="submit" size="30" value="Suchen/Speichern" tabindex="21" /></div>
								</td>
							</table>
						</div>
					</div>
				</form>
			</div>
		</div>
		<font color="#875545">
<?php
	  if ($total <> 0 ){	
	  mysql_query("LOCK TABLES __touren__ WRITE");
	  $sqlab="UPDATE __touren__ SET TourZNr = '$ticketnr',Heute = '$datumak',TagZeit = '$Zeit',AgentName='$EigName',";		
	  $sqlab.="TourName='$tournamen',Anfangsdatum='$datum',Sprache='$sprachen',BKurC= '$KCode',";
	  $sqlab.="ZBetrag='$tourpreis',PZahl ='$erw',GKZahl='$kind',KKZahl='$baby',KVorname='$KVorname',";
	  $sqlab.="TWaek1='$Euro',TWaek2='$Dolar',TWaek3='$Tlira',BarS='$Bezahltp',Fjn ='$Fjn' ,Notiz = '$Notiz' WHERE TourZNr = '$Zettelno'";
    mysql_query("UNLOCK TABLES");  
	mysql_db_query($db_name, $sqlab);}	    
   	mysql_close($db);
?></font>
	</body>
</html>[/LEFT]
 
Zuletzt bearbeitet von einem Moderator:
Hallo kkapsner,ich bin sequentielle Abarbeitung von Befehlen gewohnt, vielleicht daher zerstückele ich das php. Aber entschuldige mich, um etwas updaten zu künnen, muss ich ja erst den Inhalt des Satzes in den Formular holen. Dann hier Änderungen machen, nämlich überschreiben, erst danach kann ich den neuen Inhalt per Update überschreiben. Oder sehe ich das falsch? Danke für deine Interesse.​
 
Ich habe so ein bißchen den Eindruck, dass Du davon ausgehst, dass der PHP-Code, der nach dem HTML-Krams kommt auch erst nach dem Ausfüllen und Abschicken ausgeführt wird. PHP und HTML mit Javascript sind zwei völlig verschiedene Abläufe und vor allen Dingen sind sie entkoppelt. Anders ausgedrückt: der komplette PHP-Code ist schon längst fertig, bevor auch nur ein Fetzen im Browser ankommt.

Falls Dir das schon bewusst war, so kommt es zumindest nicht rüber, was auch an Deinen "ausführlichen" Beschreibungen liegt.
 
Hallo Albu, Hallo kkapsner, Die Vermutung von Albu stimmt. Ich ging davon aus, dass in der Abarbeitung ein hin und her für php in Frage käme. Aber trotzdem kann ich die Sache, wie eine glitschige Seife, nicht anpacken. Wäre dankbar wenn von Euch eine Skizze ausfgefertigt werden würde. Danke.​
 
PHP:
 <td bgcolor="#a73f15" width="153" height="60">
                                        <div align="left">
                                            <font color="#fff2f7"><input name="KVorname" value="<? echo $KVorname; ?>" size="14" tabindex="10" /></font></div>
                                    </td>
                                    <? $KVorname = $HTTP_POST_VARS['KVorname']; ?></tr>

Du kannst $KVorname bereits vorher auslesen und damit auch in die Datenbank eintragen. Mal ne Skizze:

PHP:
<?php
if($formularAbgesendet)
{
   $kVorname = $_POST['kVorname'];
   updateDB(....);
}

$result = readDB(....);
$kVorname = $result['kVorname'];
?>
<!Doctype...>
<html>
...
<form method="post"....>
<input name="kvorname"  value="<?php echo $kVorname;?>"/>
</form>
</html>
 
Zuletzt bearbeitet:
Hallo ZeitGeist, ich habe der Programmcode neu, nach deinem Vorschlag aufgebaut. Nun aber um die Variable "$formularAbgesendet" zu bestimmen ging ich so for: Ich starte ein Javascript in Abhängigkeit von onsubmit. Da drinnen gebe ich "document.formularticket.onsm.value=1" ,wobei ich in html das "onsm" in einem input Befehl, hidden, einlese, danach es als "$formularAbgesendet= $_POST['onsm']" zu kriegen. Es klappt noch nicht. Für Hinweise bedanke ich mich.​
 
Warum willst du das machen?
Es reicht doch zu prüfen ob ein Feld in $_POST gesetzt ist, wenn ja wurde das Formular abgesendet.
 
Hallo ZeitGeist, ich schicke dir wieder die vereinfachte Version. Wenn du Zeit haben solltest schaue bitte mal rein.
Danke im Voraus.
---------------------------------------
<?php
if($Zettelno)
{
$Zettelno = $_POST['Zettelnr'];
$KVorname = $_POST['KVorname'];
$KNachname = $_POST['KNachname'];


$sqlab="UPDATE __tourenk__ SET TourZNr = '$Zettelno',KVorname='$KVorname',KNachname='$KNachname' WHERE TourZNr = '$Zettelno'";
mysql_db_query($db_name, $sqlab);
}
$db_server = 'xxx.xxx.de';
$db_name = 'xxx';
$db_user = 'xxx';
$db_passwort = 'xxx';
$db = mysql_connect ( $db_server, $db_user, $db_passwort ) or die ( 'Keine Verbindung' );
if ( $db )
{
echo "<br />\n";
echo 'Verbindung realisiert.';
echo "<br />\n";
}

$db_check = mysql_select_db ( $db_name );
$res = mysql_db_query($db_name, "select * from __tourenk__ WHERE TourZNr = '$Zettelno'");
$num = mysql_num_rows($res);

while($query_data = mysql_fetch_array($res))
{
$ticketnr = $query_data[0];$KVorname = $query_data[1];$KNachname= $query_data[2];}
mysql_close($db);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- DW6 -->
<head>
</head>
<!-- Copyright 2005 Macromedia, Inc. All rights reserved. -->
<title>Update</title>..
<body onload="self.focus();document.formularticket.ZettelNr.focus();">
<div id="Ebene1" class="bodyText">
<div align="center">
<form name="formularticket" action="Update.php" method="post" onsubmit="return confirm('Suche/Speichere')" onreset="return confirm('soll ich alles loeschen')">
<div style="position:relative;width:1853px;height:889px;background-color:#954;background-image:url('(EmptyReference!)');margin:auto;-adbe-g:a;">
<div style="position:absolute;top:26px;left:32px;width:633px;height:394px;">
<table class="bodyText" width="633" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="#cc0000" background="(EmptyReference!)" height="364">
<caption></caption>
<tr bgcolor="#ffbc06" height="25">
<td bgcolor="#a73f15" width="151" height="25"><font color="#fff2f7">DEMO TOURS</font></td>
<td bgcolor="#a73f15" width="129" height="25">
<div align="center">
<font color="#fff2f7">KundenNo</font></div>
</td>
<td bgcolor="#a73f15" width="153" height="25">
<div align="left">
<font color="#fff2f7"><input type="text" name="ZettelNr" size="10" /><input name="ticketnr" value="<? echo $Zettelno; $ticketnr=$Zettelno; ?>" readonly="readonly" size="14" /></font></div>
</td>
<td bgcolor="#a73f15" width="134" height="25">
<div align="right"></div>
</td>
</tr>
<tr bgcolor="#ffbc06" height="25">
<td bgcolor="#a73f15" width="151" height="25"><font color="#fff2f7">Nachname</font></td>
<td bgcolor="#a73f15" width="162" height="25"><input name="KNachname" value="<? echo $KNachname; ?>" size="14" tabindex="11" /></td>

<div align="right">
<font color="#fff2f7">Vorname:</font></div>
<td bgcolor="#a73f15" width="153" height="25">
<div align="left">
<font color="#fff2f7"> Vorname:</font></div>
</td>
<td><input name="KVorname" value="<? echo $KVorname; ?>" size="14" tabindex="10" /></td>
</tr>
<td bgcolor="#a73f15" width="153" height="25">
<div align="left"></div>
</td>
<div align="right">
<input type="submit" size="30" value="Abschicken" tabindex="21" /></div>
</table>
</div>
</div>
</form>
</div>
</div>
<font color="#875545">
</font>
</body>
</html>
Es können html-Fehler wegen der Verkürzung vorhanden sein.Schau nur bitte ob es richtig strukturiert ist.
 
Zuletzt bearbeitet von einem Moderator:
Hallo ZeitGeist, es ist mir einen peinlichen Fehler passiert, in dem Beitrag habe ich meine private Daten versehentlich mitgeschickt. Bitte lösch den Beitrag, wenn du gelesen hast. Danke.
 
@engel:
Du kannst Deine eigenen Threads auch noch nachträglich bearbeiten.
Auch kannst Du den php-Tag benutzen, um Deinen Code leserlicher zu machen.
 
Hallo dkdenz, kannst mir sagen wie ich meinen Beitrag verbessern kann? Danke.

An deinem Beitrag gibts unten rechts einen Button, da steht EDIT drauf.

Das update wird nicht funktionieren, wenn du davor keine Datenbank verbindung auf gebaut hast. Und bevor du den Code nicht in einen PHP-Block gepackt hast und mir gesagt hast was daran nicht funktioniert werde ich da nicht weiter reinschauen.
 
PHP:
<?php 
if($Zettelno) 
{ 
   $Zettelno = $_POST['Zettelnr'];
   $KVorname = $_POST['KVorname'];
   $KNachname = $_POST['KNachname'];
     
$db_server = 'xxxx.xxx.de';
$db_name = 'yyyyyyy';
$db_user = 'zzzzzz';
$db_passwort = 'wwwww';         
$db = mysql_connect ( $db_server, $db_user, $db_passwort ) or die ( 'Keine Verbindung' ); 
if ( $db )
{
  echo "<br />\n";
  echo 'Verbindung realisiert.';
  echo "<br />\n";
}	
  $sqlab="UPDATE __tourenk__ SET TourZNr = '$Zettelno',KVorname='$KVorname',KNachname='$KNachname' WHERE TourZNr = '$Zettelno'";
  mysql_db_query($db_name, $sqlab);  
}      
 $db_check = mysql_select_db ( $db_name, $db );   
 $res = mysql_db_query($db_name, "select * from __tourenk__ WHERE TourZNr = '$Zettelno'");
 $num = mysql_num_rows($res);
  
 while($query_data = mysql_fetch_array($res))
 {
 $ticketnr = $query_data[0];$KVorname = $query_data[12];$KNachname= $query_data[13];}
 /*mysql_close($db);*/
?>  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<!-- Copyright 2005 Macromedia, Inc. All rights reserved. -->
<title>Update</title>.. 
<body onload="self.focus();document.formularticket.ZettelNr.focus();">
		<div id="Ebene1" class="bodyText">
			<div align="center">
				<form name="formularticket" action="Update.php" method="post" onsubmit="return confirm('Suche/Speichere')" onreset="return confirm('soll ich alles loeschen')">
					<div style="position:relative;width:1853px;height:889px;background-color:#954;background-image:url('(EmptyReference!)');margin:auto;-adbe-g:a;">
						<div style="position:absolute;top:26px;left:32px;width:652px;height:184px;">
							<table class="bodyText" width="652" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="#cc0000" background="(EmptyReference!)" height="124">
								<caption></caption>
									<td bgcolor="#a73f15" width="153" height="25"><font color="#fff2f7">DEMO TOURS</font></td>
									<td bgcolor="#a73f15" width="162" height="25">
										<div align="center">
											<font color="#fff2f7">KundenNo</font></div>
									</td>
									<td bgcolor="#a73f15" width="152" height="25">
										<div align="left">
											<font color="#fff2f7"><input type="text" name="ZettelNr" size="10" /><input name="ticketnr" value="<? echo $Zettelno; $ticketnr=$Zettelno; ?>" readonly="readonly" size="14" /></font></div>
									</td>
									<td bgcolor="#a73f15" width="153" height="86"><font color="#fff2f7">Nachname</font></td>
									<td bgcolor="#a73f15" width="162" height="86"><input name="KNachname" value="<? echo $KNachname; ?>" size="14" tabindex="11" /></td>
									<div align="left">
										<td bgcolor="#a73f15" width="152" height="86"><font color="#fff2f7">Vorname</font></td>
										<td bgcolor="#bd0a47" width="173" height="86"><input name="KVorname" value="<? echo $KVorname; ?>" size="14" tabindex="10" /></td>
									</div>
								<div align="right">
									<input type="submit" size="30" value="Abschicken" tabindex="21" /></div>
							</table>
						</div>
					</div>
				</form>
			</div>
		</div>	    
</body>
</html>
Hallo ZeiGeist, es ist folgendes:
Wenn ich Die Connection Befehl in dem if($Zettelno) Block einbaue kann er nicht die Verbindung herstellen und bringt die Fehlermeldung:
Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /mnt/web7/50/67/51610067/htdocs/Update.php on line 22.....
Wenn aber ich es nachdem if($Zettelno) einbaue kann er die Verbindung,aber einlesen tut er nicht.Ist die Variable $Zettelno nicht da?
 
Zuletzt bearbeitet von einem Moderator:
Hallo kkapsner, da sieht man schon dass ich mit diesem Konzept Schwierigkeiten habe. Korrigieren oder nicht korrigieren ist deine Sache. Danke.​
 
mysql_select muss natürlich auch vor dem update stehen. Und du solltest die Verbindung nicht im If-Zweig einbauen, sondern davor. Du brauchst die ja immer.
 
Zurück
Oben