Hallo,

Ik heb een script waarmee ik gegevens haal uit verschillende databases.
Ik gebruik daar de volgende code`s voor;
<input type="checkbox" name="db_een.test" value="db_een.test">Test<br> 


Op de verwerkingspagina;
$db_een.test=strip_tags(stripslashes(trim($_POST['db_een.test'])));

if(!empty($db_een.test))  	fwrite($Open, $db_een.test.", ");


Omdat ik uit verschillende databasen gegevens haal, heb ik "." (punt) gebruikt om aan te geven van waar hij het uit moet halen.
Maar wanneer ik dit doe krijg ik een parse error.
Weten jullie misschien wat ik moet doen om de codes werkend te krijgen.

Met vriendelijke groet,
Jan Volker
Een . is niet toegestaan in variables.

Je kan dit oplossen door bv. met keys te werken, dan krijg je arrays.

Maar ik wil graag weten, waarom je een variabele aan een database wilt koppelen.

Je weet zelf toch wel welke variabele bij welke database hoort?
Ik weet het zelf wel, maar ik wil bijvoorbeeld "Naam" uit "db_een" halen en "Achternaam" uit "db_twee".
En om dat aan te geven moet ik "db_een.Naam" en "db_twee.Achternaam" doen.
maak 1 grote database en weg is je probleem
Ik snap niet wat je precies wilt aangeven. Maar iig, maak dan gebruik van arrays.


<input name="db_een[naam]">


Volgens mij hoef je nu geen enkele quotes te gebruiken (html). Maar in PHP wel ;)

Dit wordt $_POST['db_een']['naam']. Als ik mij niet vergis :p

Guus ten Hove schreef op 02.04.2009 12:04
maak 1 grote database en weg is je probleem
Wie zegt dat, dat kan?

Als je geen goede oplossingen hebt, blaat dan even niks ok?
Bedankt voor je nuttige opmerking Guus.

@Dennis, het script werkt ook met sql, daar gebruik ik ook de syntax "db_een.Naam". Als ik het bovenstaande van jou gebruik werkt hij niet.

Als ik de punt niet gebruik, dus alleen "Naam" schrijf krijg ik de volgende foutmelding;
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Program Files\EasyPHP 3.0\www\test.php on line 45
Geef eens wat meer code, want ik snap je totaal niet.

Ik snap niet waarom je foutmeldingen zou krijgen als je de naam van de database niet in de variabele naam hebt staan.
@ Jan

Hoe weet je nu welke achternaam bij naam hoort?

Je kan toch net zo goed 1 database gebruiken en dan:

<?PHP

/* Query uitvoeren. */

/* Result ophalen. */

/* Kijken of er een result is. */

/* Mysql fetch assoc gebruiken. */

/* Alle data laten zien. */

?>

Die methode die jij nu gebruikt lijkt mij een beetje onhandig.

Of zie ik dat nu verkeerd?

Groetjes,

ark
@Dennis, waarschijnlijk omdat er ook een Naam in "db_twee" zit.
Ik heb het script zo gebouwd dat je met dit script een pagina kan maken. Het word in een nieuwe php bestand opgeslagen
Ik wil in dat nieuwe bestand "db_een.Naam" opgeslagen word.
Ik had het script zodanig gebouwd dat er in de database hetvolgende werd opgeslagen als ik naam had aangevinkt:
SELECT Naam FROM db_een
Maar nu wil ik uit een andere database de achternaam halen. dus dan zou het sql syntax er zo uit moeten zien;
SELECT db_een.Naam, db_twee.Achternaam FROM db_een, db_twee
Als ik
SELECT Naam, Achternaam FROM db_een, db_twee
doe krijg ik de bovenstaande foutmelding.

@Ark, ik heb het sql syntax getest , en hij vind de juiste achternaam bij de naam
Waarschijnlijk? Dat weet je niet eens?

Dan vraag ik mij af, waar je mee bezig bent.

Maar je kan zover ik weet niet in 1 query gegevens uit 2 databases halen.
@ jan

We willen je alleen maar helpen om het zo goed mogelijk te maken.
Als ik jouw was zou ik opnieuw beginnen met 1 Database.

Reageren