小编lit*_*leK的帖子

在(php-fpm)docker容器中找不到mysqli

我在我的 nginx Web 服务器使用的 docker 容器中运行php:7-fpm。除了当我尝试在我的 PHP 代码中实例化一个 mysqli 连接时,一切都运行良好。我收到以下错误:

"NOTICE: PHP message: PHP Fatal error:  Uncaught Error: Class 'Listener\mysqli' not found in index.php:104
Run Code Online (Sandbox Code Playgroud)

这是我用于构建映像的 Dockerfile,我在其中显式安装了 mysqli 扩展:

FROM php:7-fpm

RUN docker-php-ext-install mysqli
Run Code Online (Sandbox Code Playgroud)

鉴于下面的 phpinfo() 输出,它似乎已安装。我需要以某种方式配置或启用它吗?

在此处输入图片说明

php docker docker-compose fpm

5
推荐指数
1
解决办法
3866
查看次数

PHP将MySQL导出为CSV - 显示HTML的结果

我已经看到了这个帖子,但它并没有真正提供解决方案(至少对我有用)......

我有一个PHP页面,它执行一些基本的MySQL查询,其结果显示在页面上.我在整个过程中使用了一些$ _GET和$ _SESSION变量.

在同一页面中,我还允许用户"导出到CSV"(通过调用函数).从导出返回的文件底部有CSV结果,但也包含我的页面的HTML(调用该函数).

现在,在页面顶部我有ob_start(),在底部我有ob_flush(),否则在页面加载时我会收到一些"无法修改标题..."错误.所以,正如我在帖子中所建议的那样:

 My guess is that you've got some sort of template that generates the same HTML header and footer regardless of the page that is requested. Sometime before the exportCSV function is called, the header is generated.

 You don't show the bottom of the output, but I'll bet the footer is there too, since I suspect the flow control will continue on to that code after the function exits."

 (http://stackoverflow.com/questions/207019/why-am-i-getting-html-in-my-mysql-export-to-csv/207046)
Run Code Online (Sandbox Code Playgroud)

有没有人对如何防止这种情况发生任何想法?如果我发布一些代码,请告诉我,我会......

谢谢!

编辑:

在调用导出函数之前调用ob_end_clean()时,它会删除CSV之前的任何html.但是,在CSV结果后,我仍然会收到一些HTML结束标记...

 fname …
Run Code Online (Sandbox Code Playgroud)

html php mysql csv

4
推荐指数
1
解决办法
6953
查看次数

mysql_real_escape_string和单引号

我很沮丧.我希望能够用单引号插入我的数据库名称 - 例如,O'Connor.

所以,当插入数据库时​​,我会:

 $lname = mysql_real_escape_string($_POST['lname']);
Run Code Online (Sandbox Code Playgroud)

然后我将$ lname插入数据库.

当它在数据库中时,它显示为O \'Connor.

所以,如果我在网络应用程序中回忆起这个姓氏,我将不得不使用:

 $lname = stripslashes($r["lname"]);
Run Code Online (Sandbox Code Playgroud)

这一切似乎都很好.但是,我有一个搜索功能,它将搜索姓氏并显示结果.当我搜索时,我必须搜索O \'Connor以获得任何结果.

你看,在我搜索之后,文本框会自动存储刚搜索过的内容的值(使用会话).所以我的代码是这样的:

 $search = mysql_real_escape_string($_GET['search']);
 $_SESSION['search'] = $search;
Run Code Online (Sandbox Code Playgroud)

就像我之前说过的,当我搜索时,我必须使用"O \'Connor",然后在搜索之后,文本框中的值变为"O \\\\'Connor"

试图解决这个问题令人沮丧.有谁知道我做错了什么?谢谢!

编辑:

这是我的php5.ini文件,关于魔术引号:

 ; Magic quotes
 ;

 ; Magic quotes for incoming GET/POST/Cookie data.
 magic_quotes_gpc = On

 ; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
 magic_quotes_runtime = Off

 ; Use Sybase-style magic quotes (escape ' with '' instead of \').
 magic_quotes_sybase = Off
Run Code Online (Sandbox Code Playgroud)

但是,我的网站托管在GoDaddy上,我没有权限编辑该文件:(

php mysql escaping mysql-real-escape-string

4
推荐指数
1
解决办法
1万
查看次数

对postgresql数据库转储进行排序(pg_dump)

我正在创建pg_dumps,DUMP1和DUMP2.

DUMP1和DUMP2完全相同,只是DUMP2以DUMP1的REVERSE顺序转储.

无论如何,我可以对两个DUMPS进行排序,以便两个DUMP文件完全相同(使用diff时)?

我正在使用PHP和Linux.我尝试在linux中使用"排序",但这不起作用......

谢谢!

php linux sorting postgresql pg-dump

4
推荐指数
1
解决办法
2704
查看次数

麻烦设置php Zend包含路径

我正在尝试设置我的Zend Framework的PHP路径.我对如何做到这一点非常困惑.我的Zend Framework位于我服务器上的以下位置:

亚马逊/ ZendFramework-1.10.3-最小

我将在amazon /目录中创建几个需要Zend Framework的php文件.我的包含路径是:

include("ZendFramework-1.10.3-minimal/library/Zend/Service/Amazon.php");
Run Code Online (Sandbox Code Playgroud)

但是在Amazon.php里面就是这条线

require_once 'Zend/Rest/Client.php';
Run Code Online (Sandbox Code Playgroud)

...然后Client.php有更多依赖项设置,依此类推.

如何设置我的包含路径,以便Amazon.php和Client.php(等等)可以正确引用Zend Framework的位置?

谢谢

php zend-framework include-path

4
推荐指数
1
解决办法
1万
查看次数

Java如何在字符串中添加带重音的"e"?

在现有Java后的tucuxi的帮助下,从没有正则表达式的String中删除HTML,我已经构建了一个方法,可以从字符串中解析出任何基本HTML标记.但是,有时原始字符串包含html十六进制字符,如é(这是一个重音e).我已经开始添加将这些转义字符转换为真实字符的功能.

您可能会问:为什么不使用正则表达式?还是第三方图书馆?不幸的是,我不能,因为我在不支持正则表达式的BlackBerry平台上开发,我从来没有能够成功地将第三方库添加到我的项目中.

所以,我已经到了任何é被"e"替换的地步.我现在的问题是,如何在字符串中添加实际的"重音e"?

这是我的代码:

public static String removeHTML(String synopsis){

char[] cs = synopsis.toCharArray();
  String sb = new String();
  boolean tag = false;
  for (int i = 0; i < cs.length; i++) {
   switch (cs[i]) {
   case '<':
    if (!tag) {
     tag = true;
     break;
    }
   case '>':
    if (tag) {
     tag = false;
     break;
    }
   case '&':

    char[] copyTo = new char[7];
    System.arraycopy(cs, i, copyTo, 0, 7);

    String result = new String(copyTo);

    if (result.equals("&#x00E9")) {
     sb …
Run Code Online (Sandbox Code Playgroud)

html java parsing character diacritics

4
推荐指数
1
解决办法
7507
查看次数

PostgreSQL命令未列出所有模式

我想知道为什么\d只列出公共模式中的表?我在数据库中还有另一个模式sps,但是未列出这些表...

# psql -p 5432 -U postgres -h localhost myDB
Password for user postgres:
psql (9.1.5)
Type "help" for help.

myDB=# \d
                 List of relations
Schema |            Name            |   Type   |  Owner
--------+----------------------------+----------+----------
public | tableA                     | table    | postgres
public | tableB                     | table    | postgres
public | tableC                     | table    | postgres
public | table_col_seq              | sequence | postgres
(4 rows)
Run Code Online (Sandbox Code Playgroud)

postgresql

4
推荐指数
1
解决办法
3399
查看次数

Android LoaderManager和CursorLoader混淆

我试图将我的Android应用程序转换为使用LoaderManager和CursorLoader.基本上,我有一个包含ADDRESS列和DISTANCE列的SQLite数据库,我想将列值加载到ListView行中.

现在,我已经做了很多研究,所有内容都指向了这个教程:http://mobile.tutsplus.com/tutorials/android/android-sdk_content-providers/

这是一个很好的教程,但有几件事我还是不明白.主要是,如何构造传递给'new CursorLoader()'的内容URI?我没有使用任何外部数据,例如设备联系人等.

请参阅下面的代码.我对如何为BASE_URI生成值感到困惑:

public class FavoritesFragment extends ListFragment implements
    LoaderManager.LoaderCallbacks<Cursor> {

SimpleCursorAdapter mAdapter;

static final String[] FAVORITES_SUMMARY_PROJECTION = new String[] {
        MyApplication.COLUMN_ID, MyApplication.COLUMN_ADDRESS,
        MyApplication.COLUMN_DISTANCE, };

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    mAdapter = new SimpleCursorAdapter(getActivity(),
            R.layout.locations_list_row, null, new String[] {
                    MyApplication.COLUMN_ADDRESS,
                    MyApplication.COLUMN_DISTANCE }, new int[] {
                    R.id.address2, R.id.distance }, 0);
    setListAdapter(mAdapter);

    getLoaderManager().initLoader(0, null, this);
}

@Override
public void onListItemClick(ListView l, View v, int position, long id) {
    // Insert desired behavior here.
}

public …
Run Code Online (Sandbox Code Playgroud)

java android android-cursor android-loadermanager

3
推荐指数
1
解决办法
4914
查看次数

pg_dump 是否需要 -C 参数来恢复数据库?

我的目的是使用以下方法转储数据库:

pg_dump -U postgres -h localhost -p 5432 MYDB | gzip > database_dump.gz
Run Code Online (Sandbox Code Playgroud)

并将其恢复到另一个环境:

gunzip -c database_dump.gz | ssh 10.10.10.10 \
  psql -1 -U postgres -h localhost -p 5432 MYDB
Run Code Online (Sandbox Code Playgroud)

在第二个环境中恢复数据库之前,我将删除现有数据库,为新转储(包含较新的数据)让路。

这是我的问题:我是否需要-C在 pg_dump 语句中指定参数,以便输出的转储文件包含CREATE DATABASE语句?我注意到,如果没有参数,转储文件不包含该CREATE DATABASE语句。

根据该-C参数的 9.1 文档,“此选项仅对纯文本格式有意义。对于归档格式,您可以在调用 pg_restore 时指定该选项。” 我不确定这意味着什么。正如您在上面看到的,我正在使用 psql 而不是 pg_restore 进行恢复。

postgresql

3
推荐指数
1
解决办法
1113
查看次数

更改NetBeans Maven Java Project的exec-maven-plugin版本

当我在NetBeans中运行Java Maven项目时,Maven首先执行以下插件:

--- exec-maven-plugin:1.2.1:exec (default-cli) @ Questionnaire ---
Run Code Online (Sandbox Code Playgroud)

如何更改执行的插件版本?我想改用版本1.1.1.

我已经尝试<build>在pom部分中指定版本,如下所示,但无济于事.

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.sample</groupId>
    <artifactId>My Project</artifactId>
    <version>1.0</version>
    <packaging>jar</packaging>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
    </properties>
    <dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.34</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>4.2.1.Final</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.1.1</version>
            </plugin>
        </plugins>
    </build>
</project>
Run Code Online (Sandbox Code Playgroud)

netbeans maven-3 maven

3
推荐指数
1
解决办法
1989
查看次数