Hét vraag- en antwoordplatform van Nederland

Kun je op basis van een verzameling php-files de oorspronkelijke opbouw van de SQL database achterhalen?

Ik zit met een berg php-files die vroeger samen met een SQL db een site vormden. De DB is echter foetsie (en de eigenaar heeft geen backup gemaakt).

Hoe kan ik het makkelijkst, op basis van de files, de DB structuur achterhalen? (Liefst zonder elke regel code door te moeten spitten).

Verwijderde gebruiker
15 jaar geleden
Geef jouw antwoord
0 / 2500
Geef Antwoord

Het beste antwoord

Er is een freeware zoekprogramma dat heel erg geschikt is voor programmeurs. Je kunt namelijk eenvoudig door tekst-bestanden zoeken (html / php / asp etc.) maar ook op complexe wijze (met reguliere expressies en dergelijke). Je kunt dit dus downloaden en vervolgens alle PHP scripts doorzoeken op SQL statements zoasl INSERT INTO, SELECT FROM, UPDATE WHERE, etc. Vervolgens kun je aangeven dat deze zoekresultaten moeten worden geexporteerd en dan zie je alle SQL-statements bij elkaar staan. En zo kun je een beetje de database herleiden.

Maar zoek anders eerst door alle PHP scripts naar CREATE TABLE statements. Misschien is er ergens een installatie script?
Verwijderde gebruiker
14 jaar geleden

Andere antwoorden (2)

Lastig!

Ik vrees dat je moet zoeken naar alle sql queries, en hier opvissen welke tabellen & velden bevraagd worden. Vervolgens moet je voor deze queries bepalen welk type data ze bevatten.

Het kan. Maar het is een boel werk.

Wellicht heeft de stapel PhP files wel een bestand voor alle database handelingen? Dan kan je daar snel alle sql statements uit halen.

Je kan natuurlijk een parsefunctie schrijven die alle mysql_query() statements doorzoekt en dan de argumenten voor je uitspuugt?
Verwijderde gebruiker
15 jaar geleden
Meestal geeft een website wel een foutmelding als deze bijvoorbeeld een database of een tabel in die database niet kan vinden.

Dan kun je de website bijvoorbeeld op een eigen computer plaatsen en opvragen. Eerst verwijs je naar de database en bekijk je wat dan de eerste foutmelding is.

En zo kun je steeds een stapje verder gaan. Het is verre van ideaal, maar het is ook wel wat knullig als iemand een eigen database opzet en vervolgens is nauwelijks nog te achterhalen hoe die database er uit gezien moet hebben.

Tip: met XAMMP installeer je een webserver (Apache), database (MySQL) + PHP op een Windows-computer.

Als alternatief voor XAMMP kun je ook de bestanden op een extern webserver plaatsen. Voordeel van een lokale webserver is echter dat je bijvoorbeeld ook hulpmiddelen kunt installeren om snel met de database te kunnen werken. MySQL biedt ook tools om handig met hun database te kunnen werken.
Verwijderde gebruiker
15 jaar geleden
Deel jouw antwoord
0 / 2500
Geef Antwoord
logo van Kompas Publishing

GoeieVraag.nl is onderdeel van Kompas Publishing