parse error
Ik heb een script waarmee ik gegevens haal uit verschillende databases.
Ik gebruik daar de volgende code`s voor;
Op de verwerkingspagina;
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
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?
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
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:
Wie zegt dat, dat kan?maak 1 grote database en weg is je probleem
Als je geen goede oplossingen hebt, blaat dan even niks ok?
Gewijzigd op 01/01/1970 01:00:00 door Dennis Mertens
@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
Ik snap niet waarom je foutmeldingen zou krijgen als je de naam van de database niet in de variabele naam hebt staan.
Hoe weet je nu welke achternaam bij naam hoort?
Je kan toch net zo goed 1 database gebruiken en dan:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?PHP
/* Query uitvoeren. */
/* Result ophalen. */
/* Kijken of er een result is. */
/* Mysql fetch assoc gebruiken. */
/* Alle data laten zien. */
?>
/* 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
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
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.
We willen je alleen maar helpen om het zo goed mogelijk te maken.
Als ik jouw was zou ik opnieuw beginnen met 1 Database.
En inderdaad, soms heb ik wel dat bijv. Naam ook in een andere database zit, dit kan ik onderscheiden door aan te geven uit welke database ik welke tabel wil halen, en dat doe ik met die punt.
Daarom heb ik die punt ook nodig in mijn php script
@ark, het is niet mijn database, het is een database van een applicatie en ik maak daar een script voor. Ik kan niks aanpassen aan de database
Gewijzigd op 01/01/1970 01:00:00 door Jan Volker
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?PHP
/* Tabel 1 & 2 */
$aQuery =
"
SELECT
1.blaat AS blaat
1.blaat2 AS blaat2
2.blaat3 AS blaat3
2.blaat4 AS blaat4
FROM
1,
2
";
$aResultaat = mysql_query($aQuery);
if($aResultaat)
{
$aRij = mysql_fetch_assoc($aResultaat);
}
else
{
echo 'Fout met query';
}
?>
/* Tabel 1 & 2 */
$aQuery =
"
SELECT
1.blaat AS blaat
1.blaat2 AS blaat2
2.blaat3 AS blaat3
2.blaat4 AS blaat4
FROM
1,
2
";
$aResultaat = mysql_query($aQuery);
if($aResultaat)
{
$aRij = mysql_fetch_assoc($aResultaat);
}
else
{
echo 'Fout met query';
}
?>
Je kan dan gewoon de waarde zo echo'en
Het lijkt me sterk dat je met 2 database werkt.
Gewijzigd op 01/01/1970 01:00:00 door Mr.Ark
Het gaat mij om dit gedeelte;
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
"
SELECT
1.blaat AS blaat
1.blaat2 AS blaat2
2.blaat3 AS blaat3
2.blaat4 AS blaat4
FROM
1,
2
";
SELECT
1.blaat AS blaat
1.blaat2 AS blaat2
2.blaat3 AS blaat3
2.blaat4 AS blaat4
FROM
1,
2
";
1.blaat AS blaat moet in mijn geval zijn: db_een.Naam
Ik moet ervoor zorgen dat aan de hand van de codes die ik bovenin bij mijn eerste post heb geplaatst, dat daar db_een.Naam komt te staan