Uitlezing van code wordt geprint

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Izildo Pimentel

Izildo Pimentel

03/01/2018 11:16:16
Quote Anchor link
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:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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;
    
?>
Gewijzigd op 03/01/2018 11:25:10 door Izildo Pimentel
 
PHP hulp

PHP hulp

05/02/2023 04:25:16
 
- Ariën  -
Beheerder

- Ariën -

03/01/2018 11:22:19
Quote Anchor link
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.
Gewijzigd op 03/01/2018 11:25:42 door - Ariën -
 
Pipo Clown

Pipo Clown

03/01/2018 11:25:15
Quote Anchor link
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.
 
Izildo Pimentel

Izildo Pimentel

03/01/2018 11:28:17
Quote Anchor link
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?
 
Marthijn Buijs

Marthijn Buijs

03/01/2018 11:34:24
Quote Anchor link
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?


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
 
Izildo Pimentel

Izildo Pimentel

03/01/2018 11:36:06
Quote Anchor link
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
 
Adoptive Solution

Adoptive Solution

03/01/2018 11:36:20
Quote Anchor link
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

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo "Connection failed: " . $e->getMessage();
 
Izildo Pimentel

Izildo Pimentel

03/01/2018 11:40:02
Quote Anchor link
Ja had dat al gezien heb het al opgelost, maar krijg nu Connection failed: invalid data source nameSELECT p1con FROM difContent WHERE ID = 1
 
- Ariën  -
Beheerder

- Ariën -

03/01/2018 11:51:11
Quote Anchor link
Wat staat er in je $dsn?

En verder horen variabelen buiten quotes:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php // kleurtjes
        $conn = new PDO($dsn, $name, $pass);
?>


PS: Wachtwoorden en gebruikersnamen vinden we niet belangrijk om te zien.
Gewijzigd op 03/01/2018 11:53:17 door - Ariën -
 
Izildo Pimentel

Izildo Pimentel

03/01/2018 11:55:23
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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
 
- Ariën  -
Beheerder

- Ariën -

03/01/2018 12:03:22
Quote Anchor link
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.
 
Izildo Pimentel

Izildo Pimentel

03/01/2018 12:15:11
Quote Anchor link
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
 
- Ariën  -
Beheerder

- Ariën -

03/01/2018 12:16:51
Quote Anchor link
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?
Gewijzigd op 03/01/2018 12:21:46 door - Ariën -
 
Izildo Pimentel

Izildo Pimentel

03/01/2018 12:25:41
Quote Anchor link
Oh ja goed gezien, geeft nu aan: Fatal error: Call to undefined method PDO::setAtttribute()
 
- Ariën  -
Beheerder

- Ariën -

03/01/2018 12:32:46
Quote Anchor link
er staan drie 't's in plaats van 2:

Dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?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.
Gewijzigd op 03/01/2018 12:35:35 door - Ariën -
 
Adoptive Solution

Adoptive Solution

03/01/2018 12:35:58
Quote Anchor link
Ik zou de boel maar dichtgooien.

http://75076.ict-lab.nl/Portfolio%20Website/Projecten/

De zip bestanden bevatten de login van de database.
 
- Ariën  -
Beheerder

- Ariën -

03/01/2018 12:47:08
Quote Anchor link
het is zojuist gedacht, zie ik!
Gewijzigd op 03/01/2018 13:36:44 door - Ariën -
 
Izildo Pimentel

Izildo Pimentel

03/01/2018 13:47:37
Quote Anchor link
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.
 
- Ariën  -
Beheerder

- Ariën -

03/01/2018 14:03:26
Quote Anchor link
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.
Gewijzigd op 03/01/2018 14:04:07 door - Ariën -
 
Izildo Pimentel

Izildo Pimentel

03/01/2018 15:02:37
Quote Anchor link
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
 
- Ariën  -
Beheerder

- Ariën -

03/01/2018 15:13:24
Quote Anchor link
Dan moet je even in de error_log kijken. Maar eventueel kan je ook een IP-restrictie inbouwen waarbij je bepaalde IP-adressen toelaat.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
order deny,allow
deny from all
allow from 1.2.3.4
allow from 12.34.56.78


of een hele reeks:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
order deny,allow
deny from all
allow from 1.2.3
allow from 12.34.56
Gewijzigd op 03/01/2018 15:13:49 door - Ariën -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.