Your passport, issued by your country of citizenship, should always be valid at least six months into the future at the time of your arrival into the U.S.
The form I-797 is a multi-purpose form issued by the U.S. Citizenship and Immigration Services (USCIS). Most commonly it is used as a receipt notice or an approval notice related to an application submitted to USCIS. An I-797 that serves as an approval notice may or may not include an original I-94 card on the bottom quarter of the page. I-94 cards are generally included when the application requested an extension or change of status. Individuals should retain the original I-797 form for travel purposes and for their own records. Do NOT lose the original I-797. To replace the form requires an application with fee to USCIS.
The visa is a stamp placed in the passport to allow an individual to enter a particular country, such as the U.S. The visa indicates the purpose of someone's visit, and it is valid for a specified number of entries to the United States: one, two, or "multiple," until the expiration date. The validity period of a visa stamp pertains only to the period during which it may be used for admission to the U.S. - it does not indicate how long a person may stay in the U.S.
Note: Canadians do not need visa stamps to enter the U.S.
The I-94 is a small white card (Arrival/Departure record) which all nonimmigrants complete at their port of entry to the U.S. and which an immigration officer validates and staples into their passport. This is a very important document as it indicates the visa classification they are given upon entry to the U.S. and the length of time they may stay. The I-94 card is stamped in red with the date of entry to the U.S. An immigration inspector hand writes the visa classification and date until which a nonimmigrant can stay. In most cases, the I-94 card is taken from the passport upon departure from the U.S. A new one is issued upon re-entry.