6
votes

Puis-je créer ma propre base de données de PHP?

J'ai un serveur PHP de travail. Maintenant, je veux utiliser des bases de données (mysql ou quelque chose de similaire). Est-il possible de créer une base de données de PHP?

Je tiens à souligner dans mon cas, je n'ai aucun nom d'utilisateur et mot de passe que je peux utiliser pour vous connecter à MySQL Server. Je n'ai pas non plus de panneau de contrôle où je pourrais créer une base de données ou une table dans une base de données existante.

ajouté:

Je pense que SQLite est ce dont j'ai besoin. Mais si j'essaie de créer une nouvelle base de données à partir de PHP, je vois que PHP tente de créer un fichier dans un répertoire différent du répertoire où mes fichiers sont censés être. Ensuite, il indique qu'il est incapable de créer la base de données et je pense que c'est parce qu'il tente de créer dans le répertoire auquel je n'ai aucune autorisation d'écrire. Puis-je forcer php à créer SQLite dans un répertoire spécifique?


3 commentaires

Pas de mot de passe et aucun nom d'utilisateur et un serveur de base de données? Il serait plus facile de demander un compte d'utilisateur puis de le tirer, je suppose .. mais encore une fois, je n'ai jamais été dans cette situation. :)


Avez-vous un serveur de base de données installé? (Dans ce cas, MySQL)


Wow! Quelle situation. Dieu merci, je n'ai jamais eu une situation comme ça ..


6 Réponses :


4
votes

mysql, à. SQLite est une possibilité, il vous suffit d'écrire des autorisations d'écriture sur le système de fichiers. www.sqlite.org /


1 commentaires

N'oubliez pas de CHAPE APACHE: Apache et CHMOD 0600 Le fichier de base de données. Ou chmod 0666 si vous n'avez pas d'accès root. Mais cela introduit la possibilité de télécharger la base de données s'il est conservé dans le répertoire HTDOCS. Préférable de le garder dans un dossier à l'extérieur de cet arbre.



-4
votes

Oui, il suffit de tirer une requête SQL de base de base de données de PHP http://dev.mysql.com/doc/refman/ 5.0 / FR / Création-base de données.html


1 commentaires

Félicitations pour votre potentiel de badge "Pression par des pairs" :-)



10
votes

Je suppose que vous souhaitez créer une base de données SQL sans avoir accès à un serveur de base de données autonome. Vous pouvez utiliser SQLITE , qui est une bibliothèque qui crée une base de données légère dans un fichier unique sans processus distincts.

Ce n'est pas tout aussi efficace qu'un serveur de base de données autonome. Toutefois, si vous avez besoin de performances, utilisez un serveur de base de données approprié. Ce n'est pas une exigence déraisonnable pour une application Web haute performance.


2 commentaires

J'imagine que certaines personnes vont gonfler leurs propres besoins de performance. J'aimerais donc souligner que SQLite vous fera très probablement bien pour vous jusqu'à ce que vous obteniez vraiment énorme - comme, des centaines ou des milliers d'utilisateurs en même temps.


J'ai eu des problèmes d'utilisation de SQLite de PHP 4 et je ne me souviens pas de ce qui l'a causé. Assurez-vous que vous utilisez au moins PHP 5 pour SQLite. En outre, SQLite3 est beaucoup mieux que SQLite2.



1
votes

Je voudrais souligner que dans mon cas je n'ai pas de nom d'utilisateur et mot de passe sur lequel je peux utiliser pour se connecter au serveur MySQL. Je n'ai pas aussi pas de Panneau de contrôle où je pourrais créer un base de données ou une table dans un existant base de données.

Cette question me confondre, car si vous utilisez MySQL, vous devriez pouvoir créer une base de données, avec un nom d'utilisateur et un mot de passe pour vous connecter, à l'aide de leur outil d'administration de ligne de commande. C'est aussi le moyen de créer une base de données ou une table également.

Vous dites que vous n'avez pas accès à l'outil Admin? Vous n'avez pas de compte? Si tel est le cas, vous devrez les demander de la personne qui a un tel accès.


0 commentaires

-1
votes

Créer une base de données via PHP est possible, mais pour cela, vous avez besoin d'une connexion à la base de données, ce qui nécessite une paire de nom d'utilisateur / mot de passe ou d'une authentification. À moins que votre base de données permette des connexions à anonyme ou quelque chose de similaire, ce n'est pas possible.


1 commentaires

Vous ne pouvez pas vous connecter à quelque chose qui n'existe pas encore.



1
votes

Une option consiste à configurer une base de données SQLITE dans un répertoire en dehors de votre dossier HTDOCS. C'est ainsi que les gens ne peuvent pas saisir le nom du fichier de base de données et télécharger toute la base de données, compromettant sévèrement la sécurité.

Si vous êtes tellement enclin, vous pouvez même configurer une couche d'abstraction entre PHP et le SGBD en utilisant < Un href = "http://us2.php.net/manual/fr/book.pdo.php" rel = "nofollow noreferrer"> PDO . Ensuite, afin de créer l'objet de base de données, vous spécifieriez un DSN spécifique à SQLite écrire quelque chose comme ceci: xxx

puis la question comme un objet PDO normal à l'aide de Fonctions PDO .

Cette méthode permettrait mieux de faciliter la migration d'utiliser un SGBD client-serveur client une fois que vous pouvez obtenir un mis en place; Il s'agirait simplement d'une copie de la structure de la table et des données dans la nouvelle base de données et de modifier le DSN vers quelque chose approprié .


0 commentaires