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:


<?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;
	
?>
Ja joh klopt allemaal, raar dit is speciaal voor ons student om gebruik te maken van de server voor database connecties
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?
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:
<?php // kleurtjes
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
?>

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.
het is zojuist gedacht, zie ik!
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.
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
Dan moet je even in de error_log kijken. Maar eventueel kan je ook een IP-restrictie inbouwen waarbij je bepaalde IP-adressen toelaat.

order deny,allow
deny from all
allow from 1.2.3.4
allow from 12.34.56.78


of een hele reeks:

order deny,allow
deny from all
allow from 1.2.3
allow from 12.34.56

Reageren