小编Arn*_*hor的帖子

基本的PHP文件操作

为这样的基本问题道歉,但我疯了调试以下代码:

$fname = 'results.txt';

$handle = fopen($fname,"a+");
if ($handle){
    $cnt = file_get_contents('./results.txt');
    $pos = strpos($cnt,":");
    if ($pos === 'false'){
        $str = htmlspecialchars($_COOKIE['username']).": ".$_COOKIE['score'];
        fwrite($handle,$str);
        }
    if ($cnt) echo $cnt;
    else echo 'Error in file_get_contents!<br />';
}
else echo '<span>Error while opening file</span>';
Run Code Online (Sandbox Code Playgroud)

无论我做什么,$ cnt都会返回false.我试图将参数更改为'results.txt',将完整的url更改为文件 - 仍然没有进展.我在php.net上查找了这个函数,从我看到的,语法是正确的.

谢谢你的时间.

PS代码本身并不好(正则表达式更适合这个任务),正如我在急速写的那样,但我希望在重写之前让它运行.

php file-manipulation

2
推荐指数
1
解决办法
742
查看次数

检查Pascal中的数组元素是否为空

我很抱歉打扰你这种过时的语言,但有没有办法检查pascal中的特定数组元素是否为空?它是一个整数数组,因此检查元素是否为空字符串会导致类型不匹配(我喜欢这种语言!).谢谢你的时间.

pascal turbo-pascal

2
推荐指数
1
解决办法
2719
查看次数

MySQL - 在长文本中搜索

我相信这个问题对像我这样的许多 MySQL 新手会有用。有没有办法搜索 LONGTEXT 类型?正如我所看到的,FULLTEXT 只能用于 TEXT 字段,这不适合我,因为大小。

PS 我听说,LONGTEXT 存储为 BLOB,因此无法使用标准方法进行搜索。但是有什么解决方法吗?

谢谢你的时间。

mysql sql

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

通过PHP动态HTML内容

我听说通过PHP回显动态HTML内容是一种不好的做法.但是,如果您需要它,有什么替代方案,例如,网站上的导航菜单,在每个页面中重复?

php

1
推荐指数
2
解决办法
5690
查看次数

布尔OR条件 - 出了什么问题?

这是条件 -

if ($file !== "." || $file !== "..")
Run Code Online (Sandbox Code Playgroud)

不工作

if (($file !== ".") || ($file !== ".."))
Run Code Online (Sandbox Code Playgroud)

也没有工作.

if ($file !== ".")
Run Code Online (Sandbox Code Playgroud)

工作得很好."这真的让我感到前卫.我已经阅读了php.net在逻辑运算符上提供的所有内容(http://php.net/manual/en/language.operators.logical.php),我搜索了一堆糟糕的教程,而且我三重 -检查运算符优先级.从各方面来看,任何一种方法都应该有效.

可能是什么原因?

php boolean

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

ORACLE PL/SQL缺少关键字错误

代码

   SELECT some_identifier_id INTO a_someid_id FROM "SOME_IDENTIFIER" SOME_IDT
  INNER JOIN "CASE" cse ON cse.customer_id = '1001'
  INNER JOIN "MEASURE" m ON m.case_id = cse.case_id
WHERE SOME_IDT.some_identifier_type_code = '430101';
Run Code Online (Sandbox Code Playgroud)

给出"缺少关键字"错误.问题出在哪里?

oracle plsql oracle11g

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

MSBuild属性和变量重载

假设我启动一个构建脚本,定义名为SampleScript,指定参数/p:MyPrefix=Custom.脚本中有以下代码:

<PropertyGroup Condition="$(BuildDefinitionName)=='SampleScript'">
    <MyPrefix>Default</MyPrefix>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

我得到的,首先将MyPrefix设置为"Custom",然后将其重载为"Default"(我是对的吗?).如果是这样,有没有办法让用户指定的参数更优先,所以它没有超载?

msbuild overloading build-script

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

file_get_contents在现有可读文件上返回false

好吧,我开始讨厌PHP了.我有一个文件,它是完全可读的(is_readable返回true),具有777权限,通常由fopen打开,但file_get_contents返回false.代码如下:

<?php
error_reporting(-1);
$handle = fopen("tres.txt","w+");
try{
$cnt = file_get_contents("/var/www/tres.txt");
}
catch(Exception $err){ echo $err->getMessage(); }
if ($handle) echo "Allright!", "<br />";
if ($cnt) echo "Good";
if(is_readable("/var/www/tres.txt")) echo " Is";
?>
Run Code Online (Sandbox Code Playgroud)

即使我打开了我知道的所有错误报告选项,也没有发现任何错误,这让我很生气.将文件路径更改为"tres.txt"的"./tres.txt"也没有任何效果.问题可能在哪里?

PS它运行在PHP5和apache2上.

php apache file-io

0
推荐指数
1
解决办法
3059
查看次数

MySQL - 用户拒绝访问

所以,我创建了一个新用户

CREATE USER servname_shb IDENTIFIED BY 'password';
Run Code Online (Sandbox Code Playgroud)

授予他所有特权:

GRANT ALL ON *.* TO servname_shb;
Run Code Online (Sandbox Code Playgroud)

到目前为止没有错误.然后我尝试连接到数据库:

$dbhost = "localhost";
$dbname = "servname_shbusers";
$dbuser = "servname_shb";
$dbpass = "password";

$c = mysql_connect($dbhost,$dbuser,$dbpass) or die("Error:".mysql_error());
mysql_select_db($dbname) or die ("Error connecting to databse:".mysql_error());
Run Code Online (Sandbox Code Playgroud)

并得到一个错误:

Access denied for user 'servname_shb'@'localhost' (using password: YES) in <path>
Run Code Online (Sandbox Code Playgroud)

我尝试了FLUSH PRIVILEGES,删除并重新创建用户 - 没有效果.我究竟做错了什么?

php mysql permissions

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

C++ rand()中出现大量超出范围的数字

需要在范围内有一个充满随机数的数组.码:

void fillArray(int *arr){
        for(int i=0;i<(sizeof arr);i++){
            arr[i] = rand() % 2 - 2;
            }
        }

int *arrPoint(int *arr, int max){
    for (int i=0;i<max;i++){
        printf("%d is %d\n",i,arr[i]);
    }
    return arr;
}

int main(int argc, char *argv[]){
    srand ( time(NULL) );
    int arr_f[15];
    fillArray(arr_s);
    arrPoint(arr_s, 15);
    system("PAUSE");
    return EXIT_SUCCESS;
}    
Run Code Online (Sandbox Code Playgroud)

输出:

    0 is -2
1 is -1
2 is -2
3 is -1
4 is 0
5 is 0
6 is 4633240
7 is 2686652
8 is 1973724226
9 is 1974338216 …
Run Code Online (Sandbox Code Playgroud)

c++ random

0
推荐指数
1
解决办法
770
查看次数

在T-SQL函数中使用while循环

这里是非数据库程序员.它发生了,我需要在T-SQL中创建一个函数,它返回给定日期之间的工作日计数.我相信最简单的方法是使用while循环.问题是,一旦我写了类似的东西

while @date < @endDate
begin

end
Run Code Online (Sandbox Code Playgroud)

声明将不会执行,声称"关键字'返回'附近的语法不正确"(不是很有用).哪里出了问题?

PS完整代码:

ALTER FUNCTION [dbo].[GetNormalWorkdaysCount] (
@startDate DATETIME,
@endDate DATETIME
)   
RETURNS INT

AS
BEGIN
    declare @Count INT,
            @CurrDate DATETIME
    set @CurrDate = @startDate

    while (@CurrDate < @endDate)
    begin

    end

    return @Count
END
GO
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server-2008

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