【发布时间】:2013-10-23 18:06:13
【问题描述】:
我有以下代码应该将 $distritos、$concelhos 和 $codigo_postal 发送到 mysql,不幸的是它不起作用...这是代码:
<?php
require_once "http://www.onemillionforonemillion.net84.net/conectar_a_base_de_dados.php";
echo "strings para ir para sql:<br>";
$distritos = "11 12 10 13 11 14 13 17 17 18 14 19 ... continuation";
$concelhos = "11 12 10 13 11 14 13 17 17 18 14 19 ... continuation";
$codigo_postal = "9980-039 9980-039 9980-034 9980-050 9980-060 9980-070 ... continuation";
print_r (explode(' ',$distritos));
print_r (explode(' ',$concelhos));
print_r (explode(' ',$codigo_postal));
$sql_distritos = (explode(' ',$distritos));
$sql_concelhos = (explode(' ',$concelhos));
$sql_codigos_postais = (explode(' ',$codigo_postal));
$c=0;
$d=1;
while($d < count($sql_distritos))
{
$sql = mysql_query("INSERT INTO codigo_postal (codigo_distrito, codigo_concelho, codigo_postal)
VALUES('$sql_distritos[$c]','$sql_concelhos[$c]','$sql_codigos_postais[$d]')");
$c++;
$d++;
}
print_r ("<br><br><br><br><br><br><br><br>sql = " . $sql);
?>
我认为问题在于我使用的是 wamp,尽管代码连接到服务器,但我无法获取要插入数据库的信息 这是数据库连接:
<?php
$db_host = "mysql3.000webhost.com";
$db_username = "a4875610_user";
$db_pass = "*********";
$db_name = "a4875610_db";
@mysql_connect("$db_host","$db_username","$db_pass") or die ("Could not establish a connection with the database!");
@mysql_select_db("$db_name") or die ("no database");
?>
【问题讨论】:
-
您不能在已经执行的代码上使用
require。您需要将其存储在您有 php 文件试图调用它的服务器上,并通过C:\inetpub\www而不是 http 访问它。 -
不,代码只使用 require_once 执行一次
-
不,代码在您收到之前在远程服务器上执行,因为您通过 HTTP 调用它。那台机器上的网络服务器已经执行了 php,并为您提供了该 php 脚本
echo'd(考虑到您尝试使用它的上下文,这可能什么都没有),而不是 php 代码。如您所见,它不起作用。 -
好的,我明白了,但是我不能把这个文件放到服务器上,因为它太大了——服务器限制是 2 mb——这个文件只能执行一次
-
然后必须通过其他方式访问它,例如 SMB 或 FTP。 HTTP 将不起作用。 (我不确定 FTP 是否也能工作,但在我的脑海中是有道理的)
标签: php mysql database connection wamp