{ "info": { "author": "Cyril Coelho", "author_email": "informabox.contact@gmail.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python", "Topic :: Communications" ], "description": "# FluoSQL\nOutil pour le SQL\n\nIl faut savoir utiliser le SQL avant de se simplifier la vie.\n\nCreez une base de donn\u00e9e pour tester \"Exemples\" et importez le fichier sql dans le dossier exemples.\n\nAuteur: Cyril Coelho \n\n# Pas besoin de paniquer ceci va vous aider a comprendre comment \u00e7a marche\nLes dependances sont locale a python\nApr\u00e8s il est possible qu'il est necessaire d'installer: httplib, urllib\nInstallez le avec pip:\n
\npip install FluoSQL\n
\n\nSi \u00e7a ne marche pas:\n
\ngit clone https://gitlab.com/LaGvidilo/FluoSQL.git\ncd FluoSQL\nsudo pip install -e .\n
\nA noter que vous pouvez aussi utiliser \"setup.py install\"\n\nEnsuite voil\u00e0 comment utiliser cette librairie:\n\nJuste se connecter a une base de donn\u00e9e directement avec le connecteur par d\u00e9fault:\n
\nfrom FluoSQL import FluoSQL as FSQL #import FluoSQL and alias this\nSQL_base = FSQL(IP=\"192.168.1.20\",user=\"admin\",password=\"1234\",base=\"Exemple\")\n
\n\nEt ensuite faire une requ\u00eate:\n
\nprint SQL_base.make_simple_request(type_request = \"select\", selected_row=\"site,visit\", selected_from=\"stats\", WHERE={'visit>':0})\n
\n\nEnsuite voil\u00e0 un client http FluoSQL:\n
\nIP = \"localhost\"#IP of http server\nusername = \"name@mail.com\"#username (in Auth Table of database \"Exemple\")\npassword = \"1234\"#password (in Auth Table of database \"Exemple\")\nRESULT =\"NO RETURN\"#Start message\n\nimport FluoSQL#Import FluoSQL\ntry:\n\tSQL = FluoSQL.FluoSQL(IP=IP, user=username, password=password,http=True)#connection\n\n\n\t#utilisation\n\t#Set request\n\tSQL.make_simple_request(type_request = \"select\", selected_row=\"site,visit\", selected_from=\"stats\", WHERE={'visit>':0}, set_current=True,mode=-1)\n\tRESULT = SQL.send_request()#And send request & commit\nexcept:\n\tprint \"error: connector\"#if error of connector\n\nprint \"RESULT:\"\nprint RESULT\n
\n\nEt voil\u00e0 son serveur:\n
\n#coding: utf-8\nfrom FluoSQL import FluoSQL as FSQL\nSQL_base = FSQL(IP=\"192.168.1.21\",user=\"admin\",password=\"1234\",base=\"Exemple\")#For make request simple\nSQL_common = FSQL(IP=\"192.168.1.21\",user=\"admin\",password=\"1234\",base=\"Exemple\")#For send request\n\n\n#SERVEUR FluoSQL======================================START\nfrom bottle import route, run, template, get, post, request, response, static_file, redirect\n\n@post('/connect')\ndef connect_fluo():\n\tmode = request.POST['@mode']\n\tusername = request.POST['@username']\n\tpasshash = request.POST['@hash']\n\tif mode == \"connect\":\n\t\tprint \"\\n/connect\"\n\t\tSQL_base.make_simple_request(type_request = \"select\", selected_row=\"email, HASH, blocked\", selected_from=\"Auth\", WHERE={'email':username,'HASH':passhash}, set_current=True)\n\t\tprint \"REQUEST:\",SQL_base.__REQUEST__\n\t\tRES = SQL_common.set_request(SQL_base.__REQUEST__,1)\n\t\tprint \"RESULT:\",RES\n\t\treturn str(RES)\n\telse:\n\t\treturn None\n\n@post('/req')\ndef request_fluo():\n\tusername = request.POST['@username']\n\tpasshash = request.POST['@hash']\n\tsecurelogin=False\n\tSQL_base.make_simple_request(type_request = \"select\", selected_row=\"email, HASH, blocked\", selected_from=\"Auth\", WHERE={'email':username,'HASH':passhash}, set_current=True)\n\tprint \"SQL_base.__REQUEST__\",SQL_base.__REQUEST__,'\\n'\n\tRES = SQL_common.set_request(SQL_base.__REQUEST__,1)\n\ttry:\n\t\tu,h,b = RES['email'],RES['HASH'],RES['blocked']\n\t\tif b==0:\n\t\t\tif u == username: \n\t\t\t\tif h == passhash:\n\t\t\t\t\tsecurelogin=True\n\texcept:\n\t\tprint \"Pas connect\u00e9\"\n\n\tif (securelogin==False): \n\t\treturn \"\"\n\telse:\n\t\tReq = str(request.POST['@req'])+';'\n\t\tprint \"\\n/req\"\n\t\tprint \"(\",Req,\")\"\n\t\ttry:\n\t\t\tprint \"REQUEST:\",Req\n\t\t\tprint \"RESULT:\",str(SQL_common.set_request(Req))\n\t\t\treturn str(SQL_common.set_request(Req))\n\t\texcept:\n\t\t\treturn \"\"\n\t\t\t\nrun(host='0.0.0.0', port=8000)\n#SERVEUR FluoSQL======================================END\n
\n\nJe vous conseil de pas toucher au code serveur si vous voulez que \u00e7a marche.\nPour le serveur il y a une d\u00e9pendance: bottle.\nInstallez le avant de tester:\n
\npip install bottle\n
\n\nVoila c'est pas plus compliqu\u00e9\n\n\nEnsuite en d\u00e9tail:\nVous pouvez utiliser l'autoloader html & template de FluoSQL:\n
\nfrom FluoSQL import autoload\nautoload = autoload()\npages = autoload.load_html()\ntpl = autoload.load_tpl()\n
\n\nS\u00e9curiser un mot de passe:\n
\nfrom FluoSQL import hash_\nprint hash_(\"test\")\n
\n\nCharger un site en lecture seule:\n
\nfrom FluoSQL import Fluo\na = Fluo()\na.make_simple_get() \na.execute()\n
\n\n\nSe connecter avec le connecteur par d\u00e9faut:\n
\nFrom FluoSQL import FluoSQL\nSQL = FluoSQL(IP=\"192.168.1.21\",user=\"phpmyadmin\",password=\"6345\",base=\"Exemple\",http=False)\n
\n\nSe connecter avec le connecteur FluoSQL(http):\n
\nFrom FluoSQL import FluoSQL\nSQL = FluoSQL(IP=\"192.168.1.21\",user=\"phpmyadmin\",password=\"6345\",base=\"Exemple\",http=True)\n
\n\nSe deconnecter:\n
\nSQL.db_close()\n
\n\n\nUn simple select:\nid>2\n
\nSQL.make_simple_request(type_request = \"select\", selected_row=\"*\", values=\"\", selected_from=\"Auth\", WHERE={'id>':2}, mode=0, set_current=False, inc=False)\n
\nid = 1 \n
\nSQL.make_simple_request(type_request = \"select\", selected_row=\"*\", values=\"\", selected_from=\"Auth\", WHERE={'id':1}, mode=0, set_current=False, inc=False)\n
\nMode : 0 ----> fetchall (dict)\nMode : 1 ----> fetchone (dict)\nMode : -1 ---> fetch element\n\n\nRetourner la reponse:\n
\nSQL.get_reponse(mode=1)\n
\nMode : 0 ----> fetchall (dict)\nMode : 1 ----> fetchone (dict)\nMode : -1 ---> fetch element\n\nPour fabriquer une requete custom:\n
\nSQL.set_request(request,mode=0)\n
\nMode : 0 ----> fetchall (dict)\nMode : 1 ----> fetchone (dict)\nMode : -1 ---> fetch element\n\n\nPour envoyer une requete:\n
\nSQL.send_request()\n
\n\n\nVoil\u00e0 c'est tout, plut\u00f4t puissant comme outils hien?\nJe l'ai cr\u00e9\u00e9 a cause de nombreux probl\u00e8me pour faire des applications connectees propres et stable avec le framework kivy.\n\nFonctionne sous kivy et android! ;) \n\n\nA venir: un exemple de serveur SQLITE3(SQLITE3 n'a pas de connecteur online mais je compte en fabriquer un)\n\nPlus d'exemple si besoin.\n\nContactez moi si vous avez des questions int\u00e9lligentes.\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/LaGvidilo/FluoSQL", "keywords": "", "license": "COPYLEFT", "maintainer": "", "maintainer_email": "", "name": "FluoSQL", "package_url": "https://pypi.org/project/FluoSQL/", "platform": "", "project_url": "https://pypi.org/project/FluoSQL/", "project_urls": { "Homepage": "https://gitlab.com/LaGvidilo/FluoSQL" }, "release_url": "https://pypi.org/project/FluoSQL/1.0.0/", "requires_dist": null, "requires_python": "", "summary": "Connecteur SQL via HTTP & Outils SQL", "version": "1.0.0" }, "last_serial": 3219141, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "9d4de96c234b8374a54989eb1e951084", "sha256": "6effb5de2ced7e6b543eaa985a018cc1ecb1658b467b403771cf4406594f265d" }, "downloads": -1, "filename": "FluoSQL-1.0.0.tar.gz", "has_sig": false, "md5_digest": "9d4de96c234b8374a54989eb1e951084", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3231, "upload_time": "2017-10-02T13:34:55", "url": "https://files.pythonhosted.org/packages/d7/ac/6fc8e7be39fed13896438fc1e6c229d07aecc90f2fd6a110334a92c0ee0d/FluoSQL-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9d4de96c234b8374a54989eb1e951084", "sha256": "6effb5de2ced7e6b543eaa985a018cc1ecb1658b467b403771cf4406594f265d" }, "downloads": -1, "filename": "FluoSQL-1.0.0.tar.gz", "has_sig": false, "md5_digest": "9d4de96c234b8374a54989eb1e951084", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3231, "upload_time": "2017-10-02T13:34:55", "url": "https://files.pythonhosted.org/packages/d7/ac/6fc8e7be39fed13896438fc1e6c229d07aecc90f2fd6a110334a92c0ee0d/FluoSQL-1.0.0.tar.gz" } ] }