Uitlezing van code wordt geprint
Weet iemand misschien waarom mijn code wordt geprint op het scherm wanneer ik mijn php bestand probeer te laden vanuit de database.
Website: ftp://75076.ict-lab.nl/public_html/Dif%20Report%20Support%20Website/Website/php/readData.php
Uitlezing van database:
Website: ftp://75076.ict-lab.nl/public_html/Dif%20Report%20Support%20Website/Website/php/readData.php
Uitlezing van database:
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
// Require
require_once 'config.php';
// Check connection with PDO in try a block
try {
// Create connection
$conn = new PDO('$dsn', '$name', '$pass');
// Set the PDO error made to exception
$conn->setAtttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected succesfully";
} catch (Exception $e) {
echo "Connection failed: " . e$->getMessage();
}
// Select from database
$result= "SELECT p1con FROM difContent WHERE ID = 1";
echo $result;
// Close connection
$conn = null;
?>
// Require
require_once 'config.php';
// Check connection with PDO in try a block
try {
// Create connection
$conn = new PDO('$dsn', '$name', '$pass');
// Set the PDO error made to exception
$conn->setAtttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected succesfully";
} catch (Exception $e) {
echo "Connection failed: " . e$->getMessage();
}
// Select from database
$result= "SELECT p1con FROM difContent WHERE ID = 1";
echo $result;
// Close connection
$conn = null;
?>
Gewijzigd op 03/01/2018 11:25:10 door Izildo Pimentel
Logisch, je benadert het via FTP wat een File Transfer Protocol is, en geen webserver.
En verder laad je geen code uit je database. Dit script staat opgeslagen in een tekstbestandje op de server, wordt uitgevoerd via PHP die op de webserver is geconfigureerd, en vervolgens door de webserver als output wordt uitgespuugd.
Als PHP niet op de server geconfigureerd is, dan krijg je de hele bende als PHP-script uitgevoerd. Maar in jouw geval haal je naar mijn idee de werking van FTP en HTTP door elkaar.
En verder laad je geen code uit je database. Dit script staat opgeslagen in een tekstbestandje op de server, wordt uitgevoerd via PHP die op de webserver is geconfigureerd, en vervolgens door de webserver als output wordt uitgespuugd.
Als PHP niet op de server geconfigureerd is, dan krijg je de hele bende als PHP-script uitgevoerd. Maar in jouw geval haal je naar mijn idee de werking van FTP en HTTP door elkaar.
Gewijzigd op 03/01/2018 11:25:42 door - Ariën -
Hoe wordt dit bestand aan de browser aangeboden ?
Als HTML-bestand of als PHP-bestand ?
Je kunt namelijk geen PHP_code gebruiken in een HTML-bestand, andersom kan wel.
Als HTML-bestand of als PHP-bestand ?
Je kunt namelijk geen PHP_code gebruiken in een HTML-bestand, andersom kan wel.
zoals je kan zien aan de link in het laatste stukje zie je readData.php in in ftp server staat die ook opgeslagen als php, zo lees ik altijd mijn bestanden uit.
Wat is precies de oplossing hiervoor dan?
Wat is precies de oplossing hiervoor dan?
Izildo Pimentel op 03/01/2018 11:28:17:
zoals je kan zien aan de link in het laatste stukje zie je readData.php in in ftp server staat die ook opgeslagen als php, zo lees ik altijd mijn bestanden uit.
Wat is precies de oplossing hiervoor dan?
Wat is precies de oplossing hiervoor dan?
Het bestand aanroepen via het HTTP-protocol. Nu gebruik je FTP.
Verder begrijp ik het niet helemaal waarom je nu via FTP aanroept terwijl jij in je vorige topic een bestand aanriep via HTTP.
Gewijzigd op 03/01/2018 11:36:04 door Marthijn Buijs
Oh ik denk dat het probleem is opgelost, alle bestanden zitten in public_html alleen hoef je dat niet ervoor te zetten, maar weet het niet zeker want heb nu een syntax error, dan kijk of het is gelukt
Hier is de URL :
http://75076.ict-lab.nl/Dif%20Report%20Support%20Website/Website/php/readData.php
In regel 13 moet de $ voor de e staan. Dus zo
http://75076.ict-lab.nl/Dif%20Report%20Support%20Website/Website/php/readData.php
In regel 13 moet de $ voor de e staan. Dus zo
Ja had dat al gezien heb het al opgelost, maar krijg nu Connection failed: invalid data source nameSELECT p1con FROM difContent WHERE ID = 1
Wat staat er in je $dsn?
En verder horen variabelen buiten quotes:
PS: Wachtwoorden en gebruikersnamen vinden we niet belangrijk om te zien.
En verder horen variabelen buiten quotes:
PS: Wachtwoorden en gebruikersnamen vinden we niet belangrijk om te zien.
Gewijzigd op 03/01/2018 11:53:17 door - Ariën -
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
// Database info
$dsn = "mysql:host=localhost;dbname=db75076";
$name = "75076";
$pass = " xxxxx";
[/code]
Connection failed: SQLSTATE[28000] [1045] Access denied for user '75076'@'localhost' (using password: YES)SELECT p1con FROM difContent WHERE ID = 1
// Database info
$dsn = "mysql:host=localhost;dbname=db75076";
$name = "75076";
$pass = " xxxxx";
[/code]
Connection failed: SQLSTATE[28000] [1045] Access denied for user '75076'@'localhost' (using password: YES)SELECT p1con FROM difContent WHERE ID = 1
Blijkbaar kloppen je inlog-gegevens niet voor user 75076.
Kijk ze nog eens goed na, en vraag anders diegene die je database heeft aangemaakt of je de juiste rechten hebt.
Kijk ze nog eens goed na, en vraag anders diegene die je database heeft aangemaakt of je de juiste rechten hebt.
Ja joh klopt allemaal, raar dit is speciaal voor ons student om gebruik te maken van de server voor database connecties
Gewijzigd op 03/01/2018 12:22:47 door Izildo Pimentel
Dan kan het nog wel verkeerd ingesteld staan. Kan je met je user en password wel bijvoorbeeld phpMyAdmin benaderen?
Ik zie wel een spatie voor je xxx'jes staan. Stond die spatie er ook al?
Ik zie wel een spatie voor je xxx'jes staan. Stond die spatie er ook al?
Gewijzigd op 03/01/2018 12:21:46 door - Ariën -
Oh ja goed gezien, geeft nu aan: Fatal error: Call to undefined method PDO::setAtttribute()
er staan drie 't's in plaats van 2:
Dus:
Als je een goede editor hebt (PHPstorm, NetBeans) dan zou je voor spelfouten al door de auto-complete voor beschermd.
Verder zal $result ook nooit je gewenst resultaat geven omdat je de query niet uitvoert.
Dus:
Als je een goede editor hebt (PHPstorm, NetBeans) dan zou je voor spelfouten al door de auto-complete voor beschermd.
Verder zal $result ook nooit je gewenst resultaat geven omdat je de query niet uitvoert.
Gewijzigd op 03/01/2018 12:35:35 door - Ariën -
Ik zou de boel maar dichtgooien.
http://75076.ict-lab.nl/Portfolio%20Website/Projecten/
De zip bestanden bevatten de login van de database.
http://75076.ict-lab.nl/Portfolio%20Website/Projecten/
De zip bestanden bevatten de login van de database.
het is zojuist gedacht, zie ik!
Gewijzigd op 03/01/2018 13:36:44 door - Ariën -
Goed dat jullie dat hebben aangegeven heb de bestanden eraf gehaald en de config file buiten de index omgeving geplaats. Zal het weer terug zetten als ik ze heb geëncrypt.
Encrypten in de vorm van Zend Guard of Ioncube, zodat je PHP-script niet direct te lezen is?
Is dat niet wat overdreven voor een project, hoewel het wel leerzaam is?
Het probleem was enkel dat je aan het strooien was met je wachtwoorden in een open directory. Normaal zou je een open directory direct af moeten schermen via .htaccess.
De config buiten de public-map zetten is zeker een goed idee wat altijd geadviseerd wordt.
Is dat niet wat overdreven voor een project, hoewel het wel leerzaam is?
Het probleem was enkel dat je aan het strooien was met je wachtwoorden in een open directory. Normaal zou je een open directory direct af moeten schermen via .htaccess.
De config buiten de public-map zetten is zeker een goed idee wat altijd geadviseerd wordt.
Gewijzigd op 03/01/2018 14:04:07 door - Ariën -
Had een htaccess aangemaakt met deze gegevens, dit is niet de originele file path, maar die had ik wil gebruikt natuurlijk.
Maar kreeg toen deze error als ik dan deze map wilde betreden, The server encountered an internal error or misconfiguration and was unable to complete your request.
.htpasswd file:
voorbeeld user: izildo:qqQ/hpxDaN5ds
.htaccess file:
AuthUserFile /usr/local/username/voorbeeldmap/.htpasswd
AuthGroupFile /dev/null
AuthName "Please Enter Password"
AuthType Basic
Require valid-user
Maar kreeg toen deze error als ik dan deze map wilde betreden, The server encountered an internal error or misconfiguration and was unable to complete your request.
.htpasswd file:
voorbeeld user: izildo:qqQ/hpxDaN5ds
.htaccess file:
AuthUserFile /usr/local/username/voorbeeldmap/.htpasswd
AuthGroupFile /dev/null
AuthName "Please Enter Password"
AuthType Basic
Require valid-user
Dan moet je even in de error_log kijken. Maar eventueel kan je ook een IP-restrictie inbouwen waarbij je bepaalde IP-adressen toelaat.
of een hele reeks:
of een hele reeks:
Gewijzigd op 03/01/2018 15:13:49 door - Ariën -




