顯示文章

這裡允許您檢視這個會員的所有文章。請注意, 您只能看見您有權限閱讀的文章。


主題 - crazyday7

頁: [1]
1
網頁技術 / php + iframe 傳值問題
« 於: 2011-04-25 17:21 »
如何將$_POST[user_name]接到的值傳到B.php裡面?

A.php
代碼: [選擇]
<?
echo "<input type="hidden" name="user_name" id="user_name" value="$_POST[user_name]"/>";
?>
<iframe name="mm" src="B.php" scrolling="auto" frameborder="0" allowtransparency="true" width="100%" height="680"></iframe>

2
請問要如何去對照測驗者輸入的答案呢?

代碼: [選擇]
echo "<table width="100%" align="center" border="1" cellspacing="0" cellpadding="2" bordercolor="#534231">";
echo "<td width="5%" align="center">編號</td>";
echo "<td width="10%" align="center">題目</td>";
echo "<td width="10%" align="center">輸入答案</td>";
echo "</tr>";

$str="SELECT * FROM testA ORDER BY RAND() LIMIT 10";
$list=mysql_query($str);
$count=1;
while(list($id,$file,$ans)=mysql_fetch_row($list))
{
echo "<tr height="30">";
echo "<td align="center">&nbsp;".$count."&nbsp;</td>";
echo "<td align="center"><img src="$file"></td>";
echo "<td align="center"><input name="ans" type="text" id="ans" size="40" maxlength="30" /></td>";
}

3
網頁技術 / javascript 倒數計時器 設定問題
« 於: 2011-04-18 17:28 »
1.如何設定剩下3分鐘的時候字會變紅?
2.如果時間超過,會計時超過時間
3.如何將時間寫入Mysql?

代碼: [選擇]
<html>
<head>
<title>倒數計時器</title>
</head>
<? if($action == 'timesup') exit('Timesup'); ?>
<body>
<script type="text/javascript">
var hours = 0;
var minutes = 25;
var seconds = ;
var cache = 60;
function addtime(time){
        minutes += time;
        document.getElementById('show').innerHTML = '尚餘 '+hours+' 小時 '+minutes+' 分鐘 '+seconds+' 秒';
}
function count(addtime){
        if (hours==0 && minutes==0 && seconds==0){
                window.open ("index.php?action=timesup", "", "status=0,scrollbars=0,menubar=0,resizable=0,width=350,height=250");
        }else{
                setTimeout("count()", 1000);
                if (seconds == 0){
                        if (minutes == 0){
                                hours -= 1;
                                minutes = cache-1;
                                seconds = cache;
                        }else{
                                seconds = cache;
                                minutes = minutes-1;
                        }
                }else{
                        seconds = seconds-1;
                }
        }
        document.getElementById('show').innerHTML = '尚餘 '+hours+' 小時 '+minutes+' 分鐘 '+seconds+' 秒';
}
document.write('<div id="show">尚餘 '+hours+' 小時 '+minutes+' 分鐘 '+seconds+' 秒</div>');
count();
</script>

</body>
</html>

4
目前只想到一個很愚蠢的寫法...
而這個寫法相當相當沒有效率
不知道有沒有人可以提供其他方法?

如下:
代碼: [選擇]
$str1="select name,sex,birth,number,addr,web,tel,celltel,mail,user_type from user_choose ";
$choose=mysql_query($str1);

while(list($name,$sex,$birth,$number,$addr,$clinicweb,$tel,$celltel,$mail,$user_type) = mysql_fetch_row($choose))
{
//1=顯示欄位,0=不顯示欄位
if($name==1 || $sex==1 || $birth==1 || $number==1 || $addr==1 || $clinicweb==1 || $tel==1 || $celltel==1 || $mail==1 || $user_type==1)
        {
$result = "姓名,性別,生日,會員編號,住址,電話,網址,個人手機,個人e-mail,會員身份\n";
//csv only support big5 encoding
$result = mb_convert_encoding($result,'Big5','UTF-8');
echo $result;

//讀出資料

$str="select name,sex,birth,number,addr,web,tel,celltel,mail,user_type from user ";

$list =mysql_query($str);

while(list($name,$sex,$birth,$number,$addr,$clinicweb,$tel,$celltel,$mail,$user_type) = mysql_fetch_row($list))
{
$result1 = "\"$name\",\"$sex\",\"$birth\",\"$number\",\"$addr\",\"$web\",\"$tel\",\"$celltel\",\"$mail\",\"$user_type\"\n";
//csv only support big5 encoding
$result1 = mb_convert_encoding($result1,'Big5','UTF-8');
echo $result1;
}
}
        //1=顯示欄位,0=不顯示欄位
if($name==0 || $sex==1 || $birth==1 || $number==1 || $addr==1 || $clinicweb==1 || $tel==1 || $celltel==1 || $mail==1 || $user_type==1)
        {
$result = "性別,生日,會員編號,住址,電話,網址,個人手機,個人e-mail,會員身份\n";
                //...........依此類推...........
}
        //重複個好幾次....
}

5
感覺就像刷新頁面,雖然只有閃爍不到1秒,
但是感覺不好看
請問有辦法解決嗎?

代碼: [選擇]
<form id="form" name="form" method="post"  action="test.php" >關鍵字
<input type="text" name="keyword" id="keyword" maxlength="10"/>
<label>
<input type="submit" name="button2" id="button2" size="10" value="搜尋" />
</label>
</form>

<? 
$str="SELECT * FROM Register WHERE people_id LIKE '".$_POST[keyword]."' ";
$result=mysql_query($str);
list($people_id)=mysql_fetch_row($result);

if($_POST[keyword]!=$people_id)
{
echo "此人不在名單之中";
}
    else
{
echo "此人在名單中";
}
?>

6
網頁技術 / 圖片縮放問題
« 於: 2010-10-14 13:49 »
假設呈現圖片邊框限制寬75長100
現在我上傳寬100長75的圖片
圖片顯示出來會失真
javascript怎麼寫才不會失真?


7
PHP程式設計討論區 / SQL Injection 防範問題
« 於: 2010-09-21 11:31 »
目前我是把
magic_quotes_gpc=on
display_errors=off

想請問這樣安全性就夠了嗎?
還是有更好的方法呢?

8
怕敘述不清楚加上圖檔XD
這程式碼會將資料分開存入如圖user_mail_id 28和29
要怎麼改才能像如圖 user_mail_id 27存在同一格?
代碼: [選擇]
foreach($_POST['opt'] as $value)
{
list($a,$b)=explode("!#",$value);
$str="INSERT user_mail(user_mail_name,user_mail_opt,user_mail_opt1) VALUES ('$_POST[name]','$a','$b')";
mysql_query($str);
}

9
$user_mail_opt去讀資料庫裡的值
假設裡面的值是251,253,254
他可以在$str1做判別
但是值是aaaa@yahoo.com.tw,bbbb@yahoo.com.tw,cccc@yahoo.com.tw
就不行
因為小數點的關係吧!?
請問要怎麼改他才能做判別?

代碼: [選擇]
$str="SELECT * FROM user_mail";
$result=mysql_query($str); list($user_mail_id,$user_mail_name,$user_mail_opt)=mysql_fetch_row($result);

$str1="SELECT user_id,user_name,user_mail FROM user where user_mail in (".$user_mail_opt.")";
$list=mysql_query($str1);

10
現在卡在勾選幾筆資料他就印幾筆
要怎樣讓他只印一筆呢?
例如:$value=1,4,7
$name和$celltel會印出三次

代碼: [選擇]
$str="SELECT user_id,user_name,user_celltel FROM user";
$list=mysql_query($str);

while(list($id,$name,$celltel)=mysql_fetch_row($list))
{
foreach ($pieces as $value)
{

if($id==$value)
 {
               echo "<tr>";
                echo "<td width=\"30%\" align=\"center\"><input type=\"checkbox\" name=\"opt[]\" value=\"$id\" checked=\"checked\"/></td>";
                echo "<td width=\"30%\" align=\"left\">$name</td>";
echo "<td width=\"40%\" align=\"left\">$celltel</td>";
               echo "</tr>";
 }
 else
 {
         echo "<tr>";
         echo "<td width=\"30%\" align=\"center\"><input type=\"checkbox\" name=\"opt[]\" value=\"$id\" /></td>";
         echo "<td width=\"30%\" align=\"left\">$name</td>";
echo "<td width=\"40%\" align=\"left\">$celltel</td>";
         echo "</tr>";
 }
     }
}

11
已經改
php.ini
post_max_size = 10M
upload_max_filesize = 10M
並重新啟動伺服器
但是檔案只要超過2M就無法寄出
請問要改哪裡才能放寬寄出檔案大小?

代碼: [選擇]
$mail= new PHPMailer();          //建立新物件$mail,   
$mail->IsSMTP();                 //設定使用SMTP方式寄信   
$mail->SMTPAuth = true;          //設定SMTP需要驗證   
$mail->SMTPSecure = "ssl";       // Gmail的SMTP主機需要使用SSL連線   
$mail->Host ="smtp.gmail.com";  //Gamil的SMTP主機   
$mail->Port = 465;               //Gamil的SMTP主機的SMTP埠位為465埠。   
$mail->CharSet = "utf-8";         //設定郵件編碼           
 
$mail->Username = "xxxxx";  //Gmail帳號   
$mail->Password = "xxxxx";        //Gmail密碼           
    $mail->Encoding = "base64";            //設定信件編碼,大部分郵件工具都支援此編碼方式
$mail->From = "xxxxx";    //設定寄件者信箱   
$mail->FromName = "xxxxx";           //設定寄件者姓名   
$mail->Subject = "$title";    //設定郵件標題   
$mail->IsHTML(true);                     //設定郵件內容為HTML
$mail->Body = "xxxxx";  //設定郵件內容

//$mail->WordWrap = 50; // set word wrap  //每50自斷行


$str="SELECT mail_file FROM mail";
$list=mysql_query($str);
while(list($file)=mysql_fetch_row($list))
{
$uploadedfile ="$file";
//echo "$uploadedfile";
$mail->addAttachment($uploadedfile);
}
$mail->AddAddress("$addr", "$name"); //設定收件者郵件及名


if(!$mail->Send())
{   
echo "Mailer Error: " . $mail->ErrorInfo;   
}

12
$_SESSION['authstr']這個值傳到b.php似乎是空的
試著echo 但印不出東西
請問是我哪裡寫錯了?


a.php
代碼: [選擇]
<?php session_start();?>
<?
Header("Content-type: image/PNG");
 

$_SESSION['authstr']="";
 

$im = imagecreate(240,30) or die("Cant's initialize new GD image stream!");
$red = ImageColorAllocate($im, 255, 0, 0);
$white = ImageColorAllocate($im, 255, 255, 255);
$gray = ImageColorAllocate($im,  100, 100, 100);
 

imagefill($im, 0, 0, $white);
 

$ychar="A,B,C,E,F,H,K,L,M,N,P,R,T,U,V,W,X,Y,Z";
$list=explode(",",$ychar);
$cnt = count($list)-1;
 

for($i=0;$i<4;$i++){
$randnum=rand(0,$cnt);
$authnum.=$list[$randnum]." ";
}
 

$_SESSION['authstr']=str_replace(" ","",$authnum);
 

putenv('GDFONTPATH=' . realpath('.'));
imagettftext($im, 20, -1, 10, 24, $red, "/font/Blazed.ttf", $authnum);
 

for($i=0;$i<300;$i++)
imagesetpixel($im, rand()%240 , rand()%30 , $gray);
 

ImagePNG($im);
ImageDestroy($im);
?>




b.php
代碼: [選擇]
<?php session_start();?>
 <?
 $code = strtoupper($_POST['reply_form_CODE']);
// $test= $_SESSION['authstr'];
if($code == "" || $code != $_SESSION['authstr'] || strlen($code) != 4)
{
echo "try";
}
  else
  {
      echo "ok";
 }
  echo "$code";
 // echo "$test";
 ?> 


13
我已經有做轉碼的動作

可是只要匯入的有中文字,第一個字一定是亂碼

例:姓名是"林小晴",網頁看到的是"L小晴"

還是有其他的寫法?

代碼: [選擇]
$act=$_POST['act'];

if($act=="upfile" && $_FILES['userdata']['type']="text/x-comma-separated-values"&&$_FILES['userdata']['size'] >0&&$_FILES['userdata']['name']!=""&& $_FILES['userfile']['error']==0){

                $fd =  fopen ($_FILES['userdata']['tmp_name'],"r");
                rewind($fd);

  $row=0;
  while($temp=fgetcsv($fd,20000,","))
  {
if ($row>0)
{
  $sql="INSERT user(user_name,user_sex,user_birth,user_school)
  VALUES ('$temp[0]','$temp[1]','$temp[2]','$temp[3]')";
 
  $sql = mb_convert_encoding($sql,'UTF-8','Big5');   
   
  $result=mysql_query($sql);

  echo mysql_error();
}
$row=$row+1;
  }
  fclose($fd);

}

14
假設輸入三筆資料
他只會出現兩筆
最後新增的不會出現
但三筆資料確實都有寫進資料庫
請問是哪個部分寫錯了?
代碼: [選擇]
$page_count=10; //每頁設定顯示筆數
$sql_data_count=mysql_query("select count(*) from news"); //改成自己的sql語法
$row = mysql_fetch_array($sql_data_count);
$rows=$row[0];

$page_total=intval($rows/$page_count);

if ($rows % $page_count)
$page_total++;
if (isset($_GET['page']))
{
$page=intval($_GET['page']);
}
else
{
$page=1;
}

$move=$page_count * ($page - 1); //資料移動筆數

$sql_data_move=mysql_query("select news_id,news_title,news_addtime,newstag_name FROM news,newstag WHERE news_type=newstag_id".$search." order by news_addtime desc limit $move,$page_count ");

if ($row = mysql_fetch_array($sql_data_move))
{
$i=0;
echo "<table width=\"85%\" border=\"1\" cellspacing=\"0\" cellpadding=\"02\">";
echo "<tr bgcolor=\"#7f6850\" height=\"30\">
  <td align=\"center\" width=\"20%\"><span style=\"color:#FFFFFF;font-weight:bold\">發佈日期</span></td>
<td align=\"center\" width=\"65%\"><span style=\"color:#FFFFFF;font-weight:bold\">消息標題</span></td>
<td align=\"center\" width=\"15%\"><span style=\"color:#FFFFFF;font-weight:bold\">分類</span></td>
</tr>";
do
{
$i++;


while(list($id,$title,$addtime,$tagname)=mysql_fetch_row($sql_data_move))
{
echo "<tr bgcolor=\"#ddc2a7\" height=\"30\">";
echo "<td align=\"center\">".$addtime."</td>";
echo "<td align=\"left\" class=\"title\"><a href=\"news_detail.php?news_id=$id\">&nbsp;".$title."</a></td>";
echo "<td align=\"center\">".$tagname."</td>";
echo "</tr>";
}
}
while ($row = mysql_fetch_array($sql_data_move));
}
echo "<tr>";
echo "<td align='right' colspan='3' bgcolor='#EEE0D2'>";
for ($i=$$page_total+1;$i<=$page_total;$i++)
echo "<a href='news.php?page=".$i."'>[".$i ."]</a> "; //顯示出頁數,程式檔案名稱要改跟目前一樣
echo "</tr>";
echo "</table>";

15
白色視窗的連結是下載檔案的位子,可以不讓他顯示出來嗎?
用火狐看是沒有,但IE會彈出來

16
問題:A.php顯示出來的是undefined

這是A.php,等著接收B.php勾選得資料
代碼: [選擇]
function setValue(m_strValue){
    document.getElementById("txt_Value").value = m_strValue;
}

<textarea name="txt_Value" cols="50" rows="3" id="txt_Value" class="name2"></textarea>


這是B.php
代碼: [選擇]
function CloseWind(celltel){

    opener.setValue("0"+celltel);
    window.close();
}

while(list($name,$celltel)=mysql_fetch_row($list))
{
echo "<tr>";
        echo "<td width=\"40%\" align=\"center\"><input type=\"checkbox\" name=\"user[]\" value=\"$celltel!#$name\" /></td>";
        echo "<td width=\"60%\" align=\"left\">$name</td>";
        echo "</tr>";

}

echo "<tr bgcolor=\"#e6e6e5\">";
echo "<td colspan=\"2\" align=\"center\">";
echo "<input type=\"button\" name=\"btn_Close\" id=\"btn_Close\" value=\"確認\" onclick=\"CloseWind($celltel);\"/>&nbsp;&nbsp;&nbsp; ";
echo "<input type=\"button\" name=\"Submit3\" value=\"取消\" onclick=\"location.href='mail.php'\"\" /></td></tr></table>";

17
網頁技術 / [求助]開新分頁問題
« 於: 2010-07-03 10:08 »
現在要做一個像YAHOO信箱一樣
要寫信的時候點選"收件人"
就會彈跳出通訊錄
代碼: [選擇]
這是我用的語法
<script language="javascript">
<!--
function opencenterwindow(url,width,height){
 window.open(url,"","toolbar=no,height="+height+",width="+width+",left="+(window.screen.width-width)/2+",top="+(window.screen.height-height)/2+",location=no,directories=no,menubar=no,scrollbars=no,resizable=no,status=no");
}
//-->
</script>

<a href="javascript:void(0);" onclick="opencenterwindow(location.href='man.php',800,600)" >通訊錄</a>

雖然有開新分頁
但是連原本的網頁也一起跳到man.php去
請問怎麼要怎麼改
原本的網頁不會跟著跳頁?

還是說有其他簡易的開新分頁又能限制大小的語法?


18
國外某些網頁蠻厲害的
不用點選就自動轉成中文網頁
請問有人知道相關語法嗎?

19
我知道是無法同時提交兩個php,
假設action叫1.php那要怎麼讓2.php也接收到
<input type="file" name="file"  />裡面的AttFile呢?
這樣對嗎?
<input type="file" name="file"  <value="<? echo $_FILES[file];?>  />

20
這個附加檔案是網路上COPY後修改的
就差附加檔案沒收到
有人知道錯誤在哪嘛?

代碼: [選擇]
<?
/*
寄信程式
$a : 寄件人
$b : 收件人
$title : 信件標題
$msg : 信件內容
$filename : 附加檔案
*/
<?
require("mail.php");

$title=$_POST[title];
$content=$_POST[content];
$filename=$_POST[filename];

$count=1;
foreach($_POST[user] as $key => $value)
{
$temp='$mail'.$count;
list($a,$b)=explode("!#",$value);

sendmail($a,$b,$title,$content,$filename);
$count++;
    //附加檔案處理
if($filename){
$mimeType = mime_content_type($filename); // 判斷檔案類型
if(!$mimeType)$mimeType ="application/unknown"; // 若判斷不出則設為未知
$fp = fopen($filename, "r"); // 開啟檔案
$read = fread($fp, filesize($filename)); // 取得檔案內容
fclose($fp); // 關閉檔案
$read = base64_encode($read);//使用base64編碼
$read = chunk_split($read);  //把檔案所轉成的長字串切開成多個小字串
$file = basename($filename); //傳回不包含路徑的檔案名稱(mail中會顯示的檔名)

// 附檔處理開始
$body .= '--'.$boundary ."n";
// 設定附加檔案HEADER
$body .= 'Content-type: '.$mimeType.'; name='.$file."n";
$body .= 'Content-transfer-encoding: base64'."n";
$body .= 'Content-disposition: filename; filename='.$file."nn";
// 加入附加檔案內容
$body .= $read ."n";
}//處理附加檔案完畢
$body .= "--$boundary--";//郵件結尾

//mail($mailto, $subject, $body, $headers); // 寄出信件
}

?>

21
當我單一搜尋關鍵字或主題時,它可以列出我想要的,但是同時搜尋兩個條件關鍵字和主題就會顯示
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'news_type=11' at line 1該條件無相符消息!

請問是哪部份出了問題?
代碼: [選擇]
if($_POST[keyword]!="" && $_POST[importanttype]!="")
$search=" AND important_title LIKE '%".htmlspecialchars($_POST[keyword])."%' AND important_type=".$_POST[importanttype];
else if($_POST[keyword]!="" && $_POST[importanttype]=="")
$search=" AND important_title LIKE '%".htmlspecialchars($_POST[keyword])."%'";
else if($_POST[keyword]=="" && $_POST[importanttype]!="")
$search=" AND important_type=".$_POST[importanttype];
else
$search="";

頁: [1]