SeNgiR Geplaatst: 15 juni 2010 Delen Geplaatst: 15 juni 2010 Ik heb een probleem in php als ik op dezelfde pagina achter elkaar 2 functies wil aanspreken die een record toevoegen in de database. Hier zijn de 2 functies die ik aanspreek: function setAdressen($values, $recID = false) { $fm = new FileMaker(); $fm->setProperty('database', 'adressen_'); $fm->setProperty('username', '***'); $fm->setProperty('password', '***'); if($recID) { $newEdit =& $fm->newEditCommand('WEB2010', $recID, $values); $result = $newEdit->execute(); } else { $rec =& $fm->createRecord('WEB2010', $values); $result = $rec->commit(); } if(FileMaker::isError($result)) { echo "Error in 'setAdressen': " . $result->getMessage() . " "; echo "Errors: " . $result->getErrorString() . " "; $fm = NULL; exit(); return false; } else { if($recID) { return true; $fm = NULL; } else { return $rec->getRecordId(); $fm = NULL; } } } function setLeveringen($values, $recID = false) { $fm = new FileMaker(); $fm->setProperty('database', 'leveringen_'); $fm->setProperty('username', '***'); $fm->setProperty('password', '***'); if($recID) { $newEdit =& $fm->newEditCommand('WEB2010', $recID, $values); $result = $newEdit->execute(); } else { $rec =& $fm->createRecord('WEB2010', $values); $result = $rec->commit(); } if(FileMaker::isError($result)) { echo "Error in 'setLeveringen': " . $result->getMessage() . " "; return false; } else { if($recID) { return true; } else { return $rec->getRecordId(); } } } Als ik de 2 functies achter elkaar laat uitvoeren krijg ik de error: "Field Not Found". Laat ik dezelfde functies met dezelfde waardes uitvoeren op 2 verschillende pagina's dan krijg ik geen error. Wat is hier het probleem? Quote Link naar reactie
0 tackenco Geplaatst: 16 juni 2010 Delen Geplaatst: 16 juni 2010 je gebruikt voor beide functies precies dezelfde variabelen en objecten. Het is mijn inschatting dat hier ergens een conflict ontstaat. Mede ook omdat je beide functies iets laat doen in verschillende databases, zelfde layoutnamen en dergelijke. Quote Link naar reactie
0 Jeroen Aarts Geplaatst: 30 juni 2010 Delen Geplaatst: 30 juni 2010 je gebruikt voor beide functies precies dezelfde variabelen en objecten. Het is mijn inschatting dat hier ergens een conflict ontstaat.Mede ook omdat je beide functies iets laat doen in verschillende databases, zelfde layoutnamen en dergelijke. Door de lokale scope van de functies kan dit niet het probleem zijn. De variabelen worden overigens ook in elke functie opnieuw ingesteld. Is het probleem toch niet gewoon de $values array die een veld bevat die niet op de layout aanwezig is. Belangrijk is dat de velden die je gebruikt ook effectief aanwezig zijn op de layout waar je naar verwijst, WEB2010. Quote Link naar reactie
0 SeNgiR Geplaatst: 1 juli 2010 Auteur Delen Geplaatst: 1 juli 2010 Neen dat is het probleem niet, alle velden zie ik gebruik staan wel degelijk op de layout. Andere oplossingen? Quote Link naar reactie
Vraag
SeNgiR
Ik heb een probleem in php als ik op dezelfde pagina achter elkaar 2 functies wil aanspreken die een record toevoegen in de database.
Hier zijn de 2 functies die ik aanspreek:
function setAdressen($values, $recID = false)
{
$fm = new FileMaker();
$fm->setProperty('database', 'adressen_');
$fm->setProperty('username', '***');
$fm->setProperty('password', '***');
if($recID)
{
$newEdit =& $fm->newEditCommand('WEB2010', $recID, $values);
$result = $newEdit->execute();
}
else
{
$rec =& $fm->createRecord('WEB2010', $values);
$result = $rec->commit();
}
if(FileMaker::isError($result))
{
echo "Error in 'setAdressen': " . $result->getMessage() . "
";
echo "Errors: " . $result->getErrorString() . "
";
$fm = NULL;
exit();
return false;
}
else
{
if($recID)
{
return true;
$fm = NULL;
}
else
{
return $rec->getRecordId();
$fm = NULL;
}
}
}
function setLeveringen($values, $recID = false)
{
$fm = new FileMaker();
$fm->setProperty('database', 'leveringen_');
$fm->setProperty('username', '***');
$fm->setProperty('password', '***');
if($recID)
{
$newEdit =& $fm->newEditCommand('WEB2010', $recID, $values);
$result = $newEdit->execute();
}
else
{
$rec =& $fm->createRecord('WEB2010', $values);
$result = $rec->commit();
}
if(FileMaker::isError($result))
{
echo "Error in 'setLeveringen': " . $result->getMessage() . "
";
return false;
}
else
{
if($recID)
{
return true;
}
else
{
return $rec->getRecordId();
}
}
}
Als ik de 2 functies achter elkaar laat uitvoeren krijg ik de error: "Field Not Found".
Laat ik dezelfde functies met dezelfde waardes uitvoeren op 2 verschillende pagina's dan krijg ik geen error.
Wat is hier het probleem?
Link naar reactie
3 antwoorden op deze vraag
Aanbevolen berichten
Doe mee aan dit gesprek
Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.