PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fehlerbehandlung...


Trialrider
28.07.2003, 13:40:14
Hallo Leute,

ich benötige mal bitte Rat.Fatal error: Cannot redeclare odbc_binden() (previously declared in c:inetpubwwwroot_func_db_verbindung_daten.php:13) in c:inetpubwwwroot_func_db_verbindung_daten.php on line 11
Dabei hat bis Freitag alles schön funktioniert...

Mein Englisch ist iO aber ich komm trotzdemnit weiter. Wonach muss ich suchen?

So sieht die includete Datei aus: session_start ();
$db_Session_Daten = session_encode() or die();
$db_Session_Inhalte = explode (chr(34), $db_Session_Daten);

$db_Server = @$_SERVER["HTTP_HOST"];
$db_Benutzer = @$db_Session_Inhalte[1];
$db_Kennwort = @$db_Session_Inhalte[3];
$db_Verbindung = @mysql_connect ($db_Server, $db_Benutzer, $db_Kennwort);

function odbc_binden()
{
$DSN = "abc";
$Benutzer = "naich";
$Kennwort = "nadieses";

return $Verbindung = @odbc_connect($DSN, $Benutzer, $Kennwort);
}

Danke, Trialrider

Ben20
28.07.2003, 13:42:19
Die Meldung besagt, dass Du die Funktion odbc_binden() zweimal hast. Also nicht zwei Aufrufe, sondern zweimal eine Deklaration. Suche mal nach function odbc_binden - das sollte nur einmal vorkommen, ansonsten suche mal nach includes. Evlt, includest Du die Funktion zweimal!

Trialrider
28.07.2003, 14:01:02
Hi Ben20,

in folgenden Zweig wird die Datei eingebunden: case "sap":
include ("../_func_/budget_holen_sap.php");
if (empty($dbd)) $dbd="";
switch($dbd)
{
case "ja":
echo "<td colspan='2' align='left'>";
holen_sap_all();
echo "</td>";
break;

case "kunde":
echo "<td colspan='2' align='left'>";
holen_sap_kunden();
anpassen_sap_kunden();
echo "</td>";
break;

default;
}
break;

Und so sehen die beiden Funktionen aus. In diesen benötige ich aber beide Male die Variable "$db_Verbindung"... Weiß nicht, was er dann mit der o.a. (^^) Fehlermeldung will. function holen_sap_kunden()
{
$start = time();
include ("db_verbindung_daten.php");

$Verbindung = odbc_binden();

@mysql_select_db ("budgetdb", $db_Verbindung);

$mysql_sql_loeschen = "delete from budgetdb.soll_kunde where angelegt = 'auto'";
$mysql_res_loeschen = @mysql_query($mysql_sql_loeschen, $db_Verbindung);

$odbc_sql = "SELECT DISTINCT KUNNR, VKORG FROM PLAND order by KUNNR asc";
$odbc_res = @odbc_exec($Verbindung, $odbc_sql);
$x = @odbc_num_fields($odbc_res);

$mysql_sql = "";
$mysql_sql_anhang = "";

$y = 0;
while (@odbc_fetch_into($odbc_res, $Inhalt))
{
$y++;
$mysql_sql = "insert into budgetdb.soll_kunde (Jahr, Kunde, VKORG, angelegt, Datum, Zeit) values('".date("Y",time())."', ";

$Datum = date("Y.m.d", time());
$Zeit = date("H:i:s", time());
for ($i = 0; $i < $x; $i++)
{
$mysql_sql_anhang .= "'".$Inhalt[$i]."'";
if ($i+1 != $x) $mysql_sql_anhang .= ", "; else $mysql_sql_anhang .= ",'auto','$Datum','$Zeit')";
}

$mysql_sql_voll = $mysql_sql.$mysql_sql_anhang;
$mysql_res_voll = @mysql_query($mysql_sql_voll, $db_Verbindung) or die(mysql_error());

$mysql_sql = "";
$mysql_sql_anhang = "";
}

$ende = time();
$ende_H = date ("H", $ende);
$ende_i = date ("i", $ende);
$ende_s = date ("s", $ende);

@odbc_free_result($odbc_res);
@odbc_close($Verbindung);

$mysql_sql_saetze = "select * from budgetdb.soll_kunde where angelegt='auto'";
$mysql_res_saetze = mysql_query($mysql_sql_saetze, $db_Verbindung);
$mysql_saetze = mysql_num_rows($mysql_res_saetze);

@mysql_close($db_verbindung);

$delta = $ende-$start;
echo "<br>";
echo "Startzeit:&nbsp;".date ("H:i:s", $start)."<br>";
echo "Endzeit&nbsp;:&nbsp;".date ("H:i:s", $ende)."<br>";
echo "Dauer&nbsp;&nbsp;&nbsp;:&nbsp;".$delta." Sek.<br><br>";

echo "Es waren ".$y." S&auml;tze in der Datei.<br>";
echo "Es wurden ".$mysql_saetze." S&auml;tze &uuml;bertragen.<br><br>";
}

function anpassen_sap_kunden()
{
include ("db_verbindung_daten.php");
$sql_org = "select Kunde from budgetdb.soll_kunde where angelegt='auto' order by Kunde asc";
$res_org = @mysql_query($sql_org, $db_Verbindung);

if (@mysql_num_rows($res_org)!=0)
{
$Erfolg = 0;
$Pech = 0;
while ($Original = @mysql_fetch_object($res_org))
{
$Laenge_Org = strlen($Original->Kunde);
switch (substr($Original->Kunde, 0, $Laenge_Org-7))
{
case "000":
$Kunde_Neu = abs($Original->Kunde);
break;

case "CPD":
$Kunde_Neu = $Original->Kunde;
break;

default: $Kunde_Neu = $Original->Kunde;
}
$sql_upd = "update budgetdb.soll_kunde set Kunde='".$Kunde_Neu."' where Kunde='".$Original->Kunde."' and angelegt='auto'";
if ($res_upd = @mysql_query($sql_upd, $db_Verbindung)) $Erfolg++; else $Pech++;
}
}
echo "S&auml;tze angepasst:&nbsp;".$Erfolg."<br>";
echo "S&auml;tze belassen&nbsp;&nbsp;:&nbsp;".$Pech."<br>";
echo "Dies bedeutet, dass schon Daten vorhanden sind...";
}

Gruß, Trialrider